name: images on: push: tags: - "v*" jobs: build: environment: production runs-on: ubuntu-latest permissions: contents: read packages: write steps: - name: Login to Docker Hub uses: docker/login-action@v3 with: username: ${{ secrets.DOCKERHUB_USERNAME }} password: ${{ secrets.DOCKERHUB_TOKEN }} - name: Login to GitHub Container Registry uses: docker/login-action@v3 with: registry: ghcr.io username: ${{ github.actor }} password: ${{ secrets.GITHUB_TOKEN }} - name: Set up QEMU uses: docker/setup-qemu-action@v3 - name: Set up Docker Buildx uses: docker/setup-buildx-action@v3 - name: Build and push frontend uses: docker/build-push-action@v6 with: platforms: linux/amd64,linux/arm64 push: true context: "{{defaultContext}}:flowsint-app" tags: | ${{ github.repository_owner }}/flowsint-app:${{ github.ref_name }} ${{ github.repository_owner }}/flowsint-app:latest ghcr.io/${{ github.repository_owner }}/flowsint-app:${{ github.ref_name }} ghcr.io/${{ github.repository_owner }}/flowsint-app:latest - name: Build and push backend uses: docker/build-push-action@v6 with: platforms: linux/amd64,linux/arm64 push: true target: prod file: ./flowsint-api/Dockerfile tags: | ${{ github.repository_owner }}/flowsint-api:${{ github.ref_name }} ${{ github.repository_owner }}/flowsint-api:latest ghcr.io/${{ github.repository_owner }}/flowsint-api:${{ github.ref_name }} ghcr.io/${{ github.repository_owner }}/flowsint-api:latest