1111
1212env :
1313 GHCR_REGISTRY : ghcr.io
14- IMAGE_NAME : ${{ github.repository }}
1514
1615jobs :
1716 build :
3332 uses : actions/checkout@v4
3433
3534 - name : Prepare
36- id : platform
37- run : echo "pair=${platform//\//-}" >> "$GITHUB_OUTPUT"
35+ id : prepare
36+ run : |
37+ echo "pair=${platform//\//-}" >> "$GITHUB_OUTPUT"
38+ echo "image_name=${GITHUB_REPOSITORY,,}" >> "$GITHUB_OUTPUT"
3839 env :
3940 platform : ${{ matrix.platform }}
4041
5556 uses : docker/metadata-action@v5
5657 with :
5758 images : |
58- ${{ env.GHCR_REGISTRY }}/${{ env.IMAGE_NAME }}
59- # ${{ env.DOCKERHUB_REGISTRY }}/${{ env.IMAGE_NAME }}
59+ ${{ env.GHCR_REGISTRY }}/${{ steps.prepare.outputs.image_name }}
60+ # ${{ env.DOCKERHUB_REGISTRY }}/${{ steps.prepare.outputs.image_name }}
6061
6162 - name : Build and push by digest
6263 id : build
6768 platforms : ${{ matrix.platform }}
6869 push : ${{ github.event_name != 'pull_request' }}
6970 labels : ${{ steps.meta.outputs.labels }}
70- cache-from : type=gha,scope=buildkit-${{ steps.platform .outputs.pair }}
71- cache-to : type=gha,mode=max,scope=buildkit-${{ steps.platform .outputs.pair }}
72- outputs : ${{ github.event_name != 'pull_request' && format('type=image,"name={0}/{1}",push-by-digest=true,name-canonical=true,push=true', env.GHCR_REGISTRY, env.IMAGE_NAME ) || '' }}
71+ cache-from : type=gha,scope=buildkit-${{ steps.prepare .outputs.pair }}
72+ cache-to : type=gha,mode=max,scope=buildkit-${{ steps.prepare .outputs.pair }}
73+ outputs : ${{ github.event_name != 'pull_request' && format('type=image,"name={0}/{1}",push-by-digest=true,name-canonical=true,push=true', env.GHCR_REGISTRY, steps.prepare.outputs.image_name ) || '' }}
7374
7475 - name : Export digest
7576 if : github.event_name != 'pull_request'
8586 if : github.event_name != 'pull_request'
8687 uses : actions/upload-artifact@v4
8788 with :
88- name : digests-${{ steps.platform .outputs.pair }}
89+ name : digests-${{ steps.prepare .outputs.pair }}
8990 path : ${{ runner.temp }}/digests/*
9091 if-no-files-found : error
9192 retention-days : 1
@@ -100,6 +101,10 @@ jobs:
100101 id-token : write
101102
102103 steps :
104+ - name : Prepare
105+ id : prepare
106+ run : echo "image_name=${GITHUB_REPOSITORY,,}" >> "$GITHUB_OUTPUT"
107+
103108 - name : Download digests
104109 uses : actions/download-artifact@v4
105110 with :
@@ -123,8 +128,8 @@ jobs:
123128 uses : docker/metadata-action@v5
124129 with :
125130 images : |
126- ${{ env.GHCR_REGISTRY }}/${{ env.IMAGE_NAME }}
127- # ${{ env.DOCKERHUB_REGISTRY }}/${{ env.IMAGE_NAME }}
131+ ${{ env.GHCR_REGISTRY }}/${{ steps.prepare.outputs.image_name }}
132+ # ${{ env.DOCKERHUB_REGISTRY }}/${{ steps.prepare.outputs.image_name }}
128133 tags : |
129134 type=semver,pattern={{version}}
130135 type=semver,pattern={{major}}.{{minor}}
@@ -140,11 +145,11 @@ jobs:
140145 $(printf "${GHCR_REGISTRY}/${IMAGE_NAME}@sha256:%s " *)
141146 env :
142147 GHCR_REGISTRY : ${{ env.GHCR_REGISTRY }}
143- IMAGE_NAME : ${{ env.IMAGE_NAME }}
148+ IMAGE_NAME : ${{ steps.prepare.outputs.image_name }}
144149
145150 - name : Inspect image
146151 run : docker buildx imagetools inspect "${GHCR_REGISTRY}/${IMAGE_NAME}:${VERSION}"
147152 env :
148153 GHCR_REGISTRY : ${{ env.GHCR_REGISTRY }}
149- IMAGE_NAME : ${{ env.IMAGE_NAME }}
154+ IMAGE_NAME : ${{ steps.prepare.outputs.image_name }}
150155 VERSION : ${{ steps.meta.outputs.version }}
0 commit comments