mirror of https://github.com/containers/podman.git
images/create: handle tag/digest if Tag specified
Podman handles /images/create better when fromImage and Tag are specified. Now the tag/digest value provided in Tag will replace the one in fromImage Fixes: https://github.com/containers/podman/issues/23938 Signed-off-by: Nicola Sella <nsella@redhat.com>
This commit is contained in:
parent
8d5ec11d0b
commit
1778a90876
|
@ -45,6 +45,11 @@ func mergeNameAndTagOrDigest(name, tagOrDigest string) string {
|
|||
// We have a digest, so let's change the separator.
|
||||
separator = "@"
|
||||
}
|
||||
// if both name and tagOrDigest are defined we try to use the tagOrDigest image part and override the tag/digest
|
||||
if len(name) > 0 && strings.Contains(name, separator) {
|
||||
index := strings.LastIndex(name, separator)
|
||||
return fmt.Sprintf("%s%s%s", name[:index], separator, tagOrDigest)
|
||||
}
|
||||
return fmt.Sprintf("%s%s%s", name, separator, tagOrDigest)
|
||||
}
|
||||
|
||||
|
|
|
@ -112,6 +112,9 @@ fi
|
|||
t POST "/images/create?fromImage=quay.io/idonotexist/idonotexist:dummy" $expect_code \
|
||||
.message="$expect_msg"
|
||||
|
||||
# compat api pull image with fromImage and Tag
|
||||
t GET "/images/create?fromImage=alpine:latest&tag=latest" 200 .error~null .status~".*Download complete.*"
|
||||
|
||||
# Export an image on the local
|
||||
t GET libpod/images/nonesuch/get 404
|
||||
t GET libpod/images/$iid/get?format=foo 500
|
||||
|
|
Loading…
Reference in New Issue