diff --git a/.github/workflows/docker-build-publish.yml b/.github/workflows/docker-build-publish.yml new file mode 100644 index 00000000..c8167830 --- /dev/null +++ b/.github/workflows/docker-build-publish.yml @@ -0,0 +1,95 @@ +name: Publish Tactical Docker Images +on: + release: + types: [published] +jobs: + docker: + name: Build and Push Docker Images + runs-on: ubuntu-latest + steps: + - name: Check out the repo + uses: actions/checkout@v2 + + - name: Get Github Tag + id: prep + run: | + if [[ $GITHUB_REF == refs/tags/* ]]; then + VERSION=${GITHUB_REF#refs/tags/v} + echo ::set-output name=version::${VERSION} + fi + + - name: Env Variables + env: + INPUT_TAGS: ${{ steps.prep.outputs.tags }}, latest + + - name: Set up QEMU + uses: docker/setup-qemu-action@v1 + + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v1 + + - name: Login to DockerHub + uses: docker/login-action@v1 + with: + username: ${{ secrets.DOCKERHUB_USERNAME }} + password: ${{ secrets.DOCKERHUB_TOKEN }} + + - name: Build and Push Tactical Image + uses: docker/build-push-action@v2 + with: + context: . + push: true + pull: true + file: ./docker/containers/tactical/dockerfile + platforms: linux/amd64 + repository: sadnub/tactical + + - name: Build and Push Tactical MeshCentral Image + uses: docker/build-push-action@v2 + with: + context: . + push: true + pull: true + file: ./docker/containers/tactical-meshcentral/dockerfile + platforms: linux/amd64 + repository: sadnub/tactical-meshcentral + + - name: Build and Push Tactical NATS Image + uses: docker/build-push-action@v2 + with: + context: . + push: true + pull: true + file: ./docker/containers/tactical-nats/dockerfile + platforms: linux/amd64 + repository: sadnub/tactical-nats + + - name: Build and Push Tactical Salt Image + uses: docker/build-push-action@v2 + with: + context: . + push: true + pull: true + file: ./docker/containers/tactical-salt/dockerfile + platforms: linux/amd64 + repository: sadnub/tactical-salt + + - name: Build and Push Tactical Frontend Image + uses: docker/build-push-action@v2 + with: + context: . + push: true + pull: true + file: ./docker/containers/tactical-frontend/dockerfile + platforms: linux/amd64 + repository: sadnub/tactical-frontend + + - name: Build and Push Tactical Nginx Image + uses: docker/build-push-action@v2 + with: + context: . + push: true + pull: true + file: ./docker/containers/tactical-nginx/dockerfile + platforms: linux/amd64 + repository: sadnub/tactical-nginx