Disable buildx provenance to fix ECR manifest list error#101
Disable buildx provenance to fix ECR manifest list error#101wesleyjellis merged 1 commit intomainfrom
Conversation
Docker buildx enables provenance attestations by default, which causes each platform image to be pushed as a manifest list rather than a plain image manifest. ECR Public rejects creating a multi-arch manifest that references another manifest list, resulting in a release failure. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
Could you please link to a run where this failure has occurred?
When did this happen? Why didn't we apply the fix then?
What? You just said it was because of the upgraded goreleaser-action "which bundled a newer BuildKit that enables provenance attestations by default".
Both of these links appear to be about the ECR user interface display of provenance information and not about any failure to push images. |
|
OK I think I grok:
|
|
Looks like the actual root cause is with goreleaser: goreleaser/goreleaser#6399 and newer versions of docker creating attestation by default |
Summary
--provenance=falseto both dockerbuild_flag_templatesin.goreleaser.ymlgoreleaser-actionwas bumped to v6.3.0, which bundled a newer BuildKit that enables provenance attestations by defaultBackground
CircleCI has a post on this workaround: https://support.circleci.com/hc/en-us/articles/32873043536667-AWS-ECR-provenance-info-creates-confusing-appearance-of-multi-arch-images
There's a 2021 issue documenting a similar fix: aws/containers-roadmap#1596
Unclear why this previously worked? Best theory is