name: ZITADEL Release on: push: tags-ignore: - "*" workflow_dispatch: permissions: contents: write packages: write jobs: Build: runs-on: ubuntu-20.04 env: DOCKER_BUILDKIT: 1 steps: - name: Set up Go uses: actions/setup-go@v2 with: go-version: 1.17 - name: Source checkout uses: actions/checkout@v2 - name: Set up QEMU uses: docker/setup-qemu-action@v1 - name: Set up Docker Buildx uses: docker/setup-buildx-action@v1 with: driver: docker install: true - name: Tag id: semantic uses: cycjimmy/semantic-release-action@v2 with: dry_run: false semantic_version: 19.0.2 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - name: GitHub Container Registry Login if: steps.semantic.outputs.new_release_published == 'true' && github.ref == 'refs/heads/main' || github.event_name == 'workflow_dispatch' uses: docker/login-action@v1 with: registry: ghcr.io username: ${{ github.actor }} password: ${{ secrets.GITHUB_TOKEN }} - name: Google Artifact Registry Login if: steps.semantic.outputs.new_release_published == 'true' && github.ref == 'refs/heads/main' || github.event_name == 'workflow_dispatch' uses: docker/login-action@v1 with: registry: europe-docker.pkg.dev username: _json_key_base64 password: ${{ secrets.GCR_JSON_KEY_BASE64 }} - uses: goreleaser/goreleaser-action@v2 name: Publish ZITADEL if: steps.semantic.outputs.new_release_published == 'true' && github.ref == 'refs/heads/main' || github.event_name == 'workflow_dispatch' with: distribution: goreleaser version: v1.5.0 args: release env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} RELEASE_VERSION: ${{ steps.semantic.outputs.release-version }} # I think this line is not needed. Nevertheless, it's explicit - name: Publish gRPC clients uses: actions/upload-artifact@v2 if: steps.semantic.outputs.new_release_published == 'true' && github.ref == 'refs/heads/main' || github.event_name == 'workflow_dispatch' with: name: grpc-clients path: .artifacts/grpc - name: Publish console uses: actions/upload-artifact@v2 if: steps.semantic.outputs.new_release_published == 'true' && github.ref == 'refs/heads/main' || github.event_name == 'workflow_dispatch' with: name: console path: .artifacts/console - name: Publish go coverage uses: codecov/codecov-action@v3.1.0 with: file: .artifacts/codecov/profile.cov name: go-codecov