Update docker-image.yml
parent
ea12d9ffae
commit
a371fcf53d
|
@ -78,14 +78,17 @@ jobs:
|
||||||
cache-to: type=gha,mode=max,scope=${{ github.ref_name }}-${{ matrix.platform }}
|
cache-to: type=gha,mode=max,scope=${{ github.ref_name }}-${{ matrix.platform }}
|
||||||
outputs: |
|
outputs: |
|
||||||
type=image,name=${{ env.REGISTRY }}/${{ env.IMAGE_NAME }},push-by-digest=true,name-canonical=true,push=${{ github.event_name != 'pull_request' }}
|
type=image,name=${{ env.REGISTRY }}/${{ env.IMAGE_NAME }},push-by-digest=true,name-canonical=true,push=${{ github.event_name != 'pull_request' }}
|
||||||
provenance: false # 已添加,禁用 provenance
|
provenance: false
|
||||||
sbom: false # 新添加,禁用 SBOM 以确保输出单个 manifest
|
sbom: false
|
||||||
- name: Export digest
|
- name: Export digest
|
||||||
if: github.event_name != 'pull_request'
|
if: github.event_name != 'pull_request'
|
||||||
run: |
|
run: |
|
||||||
mkdir -p /tmp/digests
|
mkdir -p /tmp/digests
|
||||||
digest="${{ steps.build.outputs.digest }}"
|
# 获取构建输出的 digest(可能是 list digest)
|
||||||
touch "/tmp/digests/${digest#sha256:}"
|
list_digest="${{ steps.build.outputs.digest }}"
|
||||||
|
# 使用 imagetools inspect 提取内层 manifest digest(假设单平台,所以 Manifests 数组只有一个元素)
|
||||||
|
manifest_digest=$(docker buildx imagetools inspect ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}@${list_digest} --format '{{json .Manifests}}' | jq -r '.[0].digest')
|
||||||
|
touch "/tmp/digests/${manifest_digest#sha256:}"
|
||||||
- name: Upload digest
|
- name: Upload digest
|
||||||
if: github.event_name != 'pull_request'
|
if: github.event_name != 'pull_request'
|
||||||
uses: actions/upload-artifact@v4
|
uses: actions/upload-artifact@v4
|
||||||
|
|
Loading…
Reference in New Issue