summaryrefslogtreecommitdiff
path: root/libpod/image/image.go
diff options
context:
space:
mode:
authorOpenShift Merge Robot <openshift-merge-robot@users.noreply.github.com>2020-06-24 12:19:42 -0400
committerGitHub <noreply@github.com>2020-06-24 12:19:42 -0400
commit988fd27541dfa852ee9543c2d8a916896ef0c774 (patch)
tree592f484305f10be66d076952b6f81bc637309c11 /libpod/image/image.go
parent6bc5dcc2829c2bc08923df0b50f71582d5558fe8 (diff)
parent1c6c12581ce0f2257a862e3a6a8dbaa7d0f32686 (diff)
downloadpodman-988fd27541dfa852ee9543c2d8a916896ef0c774.tar.gz
podman-988fd27541dfa852ee9543c2d8a916896ef0c774.tar.bz2
podman-988fd27541dfa852ee9543c2d8a916896ef0c774.zip
Merge pull request #6746 from vrothberg/untag
podman untag: error if tag doesn't exist
Diffstat (limited to 'libpod/image/image.go')
-rw-r--r--libpod/image/image.go13
1 files changed, 11 insertions, 2 deletions
diff --git a/libpod/image/image.go b/libpod/image/image.go
index d81f7e911..83e7467e9 100644
--- a/libpod/image/image.go
+++ b/libpod/image/image.go
@@ -559,15 +559,24 @@ func (i *Image) TagImage(tag string) error {
return nil
}
-// UntagImage removes a tag from the given image
+// UntagImage removes the specified tag from the image.
+// If the tag does not exist, ErrNoSuchTag is returned.
func (i *Image) UntagImage(tag string) error {
if err := i.reloadImage(); err != nil {
return err
}
+
+ // Normalize the tag as we do with TagImage.
+ ref, err := NormalizedTag(tag)
+ if err != nil {
+ return err
+ }
+ tag = ref.String()
+
var newTags []string
tags := i.Names()
if !util.StringInSlice(tag, tags) {
- return nil
+ return errors.Wrapf(ErrNoSuchTag, "%q", tag)
}
for _, t := range tags {
if tag != t {