-
Notifications
You must be signed in to change notification settings - Fork 481
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Multi-arch Builds to inherit Name/Image from parameter #940
Comments
Yes this will build a manifest-list image tagged
I don't see in which use case you want a tag per arch, but you can use: docker buildx build --platform linux/arm64 -t foo:sometag-arm64 -f ./Dockerfile .
docker buildx build --platform linux/amd64 -t foo:sometag-amd64 -f ./Dockerfile . Edit: Oh ok you want tag generated for each platform. That's not how it works and don't think that's something we are going to support as it's the old-fashioned way that was used with |
@crazy-max , in Amazon Elastic Container Registry you can define Lifecycle Policy based on Tags and Tag prefixes. If we only add a Tag to the Manifest List and not the Manifests, it will be automatically deleted, so we wanted to propagate the Tag from the Manifest List to the "arch" images. You can check an example on how Amazon versions the Corretto Container |
If your policy is based on tags and tag prefixes then it's fine to only rely on manifest list imo. Why bother with duplicated manifest for each arch when a manifest list is enough? Did I miss something? |
If we rely solely on manifest list, that means that non-tagged Manifests/Images will be deleted by the Lifecycle policy. If we promote a manifest list to a certain environment, e.g.: Staging we need to tag all, otherwise ECR will remove them (while keeping the manifest list) |
I'm pretty sure that is not the case. It would be ECR bug if that would be the case. If manifest list is tagged and points to a manifest that should mean that manifest also has a reference and is not released before the manifest list is. @samuelkarp |
It's pretty easy to reproduce:
You can use the Lifecycle Policy Rule Tester in AWS Console |
Any updates on this folks? @samuelkarp @tonistiigi @crazy-max |
Hi @driverpt, I've reached out to my colleagues on the ECR team. It looks like you're seeing a bug in the rule tester, but those images will not be deleted. @tonistiigi's explanation of the logic ("If manifest list is tagged and points to a manifest that should mean that manifest also has a reference and is not released before the manifest list is.") is correct. Thanks! |
Thanks @samuelkarp for your feedback! |
Thanks folks. @samuelkarp @tonistiigi @crazy-max |
As title says:
e.g.:
And the result should be:
Currently the Actual Images (arm64 and amd64) are untagged
The text was updated successfully, but these errors were encountered: