diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 79fd6331d0..aca2c820c2 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -10,18 +10,28 @@ jobs: contents: "read" steps: - uses: actions/checkout@v4 + - name: Docker meta + id: meta + uses: docker/metadata-action@v5 + with: + images: | + ghcr.io/zitadel/login + tags: | + type=ref,event=branch + type=ref,event=pr + type=semver,pattern={{version}} + type=semver,pattern={{major}}.{{minor}} + type=semver,pattern={{major}} + labels: | + git-branch={{branch}} - name: Set up persistent Buildx builder id: buildx uses: docker/setup-buildx-action@v3 - with: - install: true - driver: docker-container - use: true - name: Build uses: docker/bake-action@v6 + env: + GIT_BRANCH: ${{ fromJSON(steps.meta.outputs.json).labels['git-branch'] }} with: source: . push: false - builder: ${{ steps.buildx.outputs.name }} - load: true targets: login-lint diff --git a/docker-bake.hcl b/docker-bake.hcl index 4efe8cfb6b..9c085c3848 100644 --- a/docker-bake.hcl +++ b/docker-bake.hcl @@ -1,14 +1,10 @@ -group "default" { - targets = [ - "login-lint", - ] -} +target "docker-metadata-action" {} -variable "REGISTRY" { +variable "IMAGE_REGISTRY" { default = "ghcr.io/zitadel" } -variable "GITHUB_REF_NAME" { +variable "GIT_BRANCH" { default = "local" } @@ -32,10 +28,10 @@ target "login-lint" { login-dev-base = "target:login-dev-base" } cache-from = [ - "type=registry,ref=${REGISTRY}/login-lint-buildcache:${GITHUB_REF_NAME}", - "type=registry,ref=${REGISTRY}/login-lint-buildcache:main" + "type=registry,ref=${IMAGE_REGISTRY}/login-lint-buildcache:${GIT_BRANCH}", + "type=registry,ref=${IMAGE_REGISTRY}/login-lint-buildcache:main" ] - cache-to = ["type=registry,ref=${REGISTRY}/login-lint-buildcache:${GITHUB_REF_NAME},mode=max"] + cache-to = ["type=registry,ref=${IMAGE_REGISTRY}/login-lint-buildcache:${GIT_BRANCH},mode=max"] } variable "LOGIN_TEST_UNIT_TAG" {