Merge pull request #46718 from rumpl/c8d-tag-label
c8d: Preserve image labels when tagging
This commit is contained in:
commit
a54a34ef0e
1 changed files with 5 additions and 4 deletions
|
@ -16,14 +16,15 @@ import (
|
|||
|
||||
// TagImage creates an image named as newTag and targeting the given descriptor id.
|
||||
func (i *ImageService) TagImage(ctx context.Context, imageID image.ID, newTag reference.Named) error {
|
||||
target, err := i.resolveDescriptor(ctx, imageID.String())
|
||||
targetImage, err := i.resolveImage(ctx, imageID.String())
|
||||
if err != nil {
|
||||
return errors.Wrapf(err, "failed to resolve image id %q to a descriptor", imageID.String())
|
||||
}
|
||||
|
||||
newImg := containerdimages.Image{
|
||||
Name: newTag.String(),
|
||||
Target: target,
|
||||
Target: targetImage.Target,
|
||||
Labels: targetImage.Labels,
|
||||
}
|
||||
|
||||
is := i.client.ImageService()
|
||||
|
@ -40,7 +41,7 @@ func (i *ImageService) TagImage(ctx context.Context, imageID image.ID, newTag re
|
|||
|
||||
// Check if image we would replace already resolves to the same target.
|
||||
// No need to do anything.
|
||||
if replacedImg.Target.Digest == target.Digest {
|
||||
if replacedImg.Target.Digest == targetImage.Target.Digest {
|
||||
i.LogImageEvent(imageID.String(), reference.FamiliarString(newTag), events.ActionTag)
|
||||
return nil
|
||||
}
|
||||
|
@ -65,7 +66,7 @@ func (i *ImageService) TagImage(ctx context.Context, imageID image.ID, newTag re
|
|||
defer i.LogImageEvent(imageID.String(), reference.FamiliarString(newTag), events.ActionTag)
|
||||
|
||||
// The tag succeeded, check if the source image is dangling
|
||||
sourceDanglingImg, err := is.Get(compatcontext.WithoutCancel(ctx), danglingImageName(target.Digest))
|
||||
sourceDanglingImg, err := is.Get(compatcontext.WithoutCancel(ctx), danglingImageName(targetImage.Target.Digest))
|
||||
if err != nil {
|
||||
if !cerrdefs.IsNotFound(err) {
|
||||
logger.WithError(err).Warn("unexpected error when checking if source image is dangling")
|
||||
|
|
Loading…
Reference in a new issue