1010env :
1111 REGISTRY : ghcr.io
1212 CN_REGISTRY : docker.cnb.cool
13-
13+ IMAGE_NAME : em-geeklab/nexusgate
14+ CN_IMAGE_NAME : em-geeklab/nexusgate/server
1415jobs :
1516 build-images :
1617 name : Build and push multi-arch images
1718 runs-on : ubuntu-24.04
18- strategy :
19- fail-fast : false
20- matrix :
21- image :
22- - name : backend
23- dockerfile : backend.Dockerfile
24- image_name : em-geeklab/nexus-gate-server
25- cn_image_name : em-geeklab/nexusgate/server
26- - name : frontend
27- dockerfile : frontend.Dockerfile
28- image_name : em-geeklab/nexus-gate-web
29- cn_image_name : em-geeklab/nexusgate/web
3019 permissions :
3120 contents : read
3221 packages : write
5746 uses : docker/metadata-action@v5
5847 with :
5948 images : |
60- ${{ env.REGISTRY }}/${{ matrix.image.image_name }}
61- ${{ github.event_name == 'release' && format('{0}/{1}', env.CN_REGISTRY, matrix.image.cn_image_name ) || '' }}
49+ ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}
50+ ${{ github.event_name == 'release' && format('{0}/{1}', env.CN_REGISTRY, env.CN_IMAGE_NAME ) || '' }}
6251 - name : Build and push Docker image
6352 id : push
6453 uses : docker/build-push-action@v6
@@ -67,11 +56,10 @@ jobs:
6756 push : true
6857 tags : ${{ steps.meta.outputs.tags }}
6958 labels : ${{ steps.meta.outputs.labels }}
70- file : ${{ matrix.image.dockerfile }}
7159 platforms : linux/amd64,linux/arm64
7260 build-args : COMMIT_SHA=${{ github.sha }}
7361 - name : Generate artifact attestation
7462 uses : actions/attest-build-provenance@v2
7563 with :
76- subject-name : ${{ env.REGISTRY }}/${{ matrix.image.image_name }}
64+ subject-name : ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}
7765 subject-digest : ${{ steps.push.outputs.digest }}
0 commit comments