c8d/push: Fix fallback single-manifest push not creating a tag#50199
Merged
vvoland merged 2 commits intomoby:masterfrom Jun 13, 2025
Merged
c8d/push: Fix fallback single-manifest push not creating a tag#50199vvoland merged 2 commits intomoby:masterfrom
vvoland merged 2 commits intomoby:masterfrom
Conversation
After pushing the multi-platform index fails due to missing content, we retry with the single-platform manifest. While the target descriptor was changed for the second push, the actual target digested reference still pointed to the original multi-platform index. Obviously, with the fallback that didn't really work correctly, because the multi-platform index is not pushed. This commit fixes the issue by updating the target reference to point to the single-platform manifest. Signed-off-by: Paweł Gronowski <pawel.gronowski@docker.com>
thaJeztah
reviewed
Jun 13, 2025
daemon/containerd/image_push.go
Outdated
| target = newTarget | ||
| pp.TurnNotStartedIntoUnavailable() | ||
|
|
||
| // Annotate ref with digest to push only push tag for single digest |
Member
There was a problem hiding this comment.
Some grammar issue in the comment 😅
thaJeztah
previously approved these changes
Jun 13, 2025
Member
thaJeztah
left a comment
There was a problem hiding this comment.
LGTM
just a nit about the comment, but looks like the other place also had that
thaJeztah
reviewed
Jun 13, 2025
Just a refactor of the previous commit to reduce duplication. Signed-off-by: Paweł Gronowski <pawel.gronowski@docker.com>
|
👋 any estimate on when this fix will make it into a Docker Desktop for Mac release? This is causing issues with pushing images to AWS ECR (and presumably any registry): aws/containers-roadmap#2627 For anyone else coming across this, adding an explicit |
Contributor
Author
|
Hi, it will be available in the next Docker Desktop release (4.43) which should be released in the first week of July. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
After pushing the multi-platform index fails due to missing content, we retry with the single-platform manifest.
While the target descriptor was changed for the second push, the actual target digested reference still pointed to the original multi-platform index.
Obviously, with the fallback that didn't really work correctly, because the multi-platform index is not pushed.
This commit fixes the issue by updating the target reference to point to the single-platform manifest.
(I split it into 2 commits to make it easier to see what the fix exactly was)