mirror of
https://github.com/zitadel/zitadel.git
synced 2024-12-12 11:04:25 +00:00
f9e79ef8fe
* chore(v2): replace old codecov uploader * Update .github/workflows/zitadel.yml
84 lines
3.0 KiB
YAML
84 lines
3.0 KiB
YAML
name: ZITADEL Release
|
|
|
|
on:
|
|
pull_request:
|
|
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: Test
|
|
run: docker build -f build/grpc/Dockerfile -t zitadel-base:local . && docker build -f build/zitadel/Dockerfile . -t zitadel-go-test --target go-codecov -o .artifacts/codecov
|
|
- 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
|