diff options
author | OpenShift Merge Robot <openshift-merge-robot@users.noreply.github.com> | 2022-05-18 11:48:06 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-05-18 11:48:06 -0400 |
commit | 7093885df73989acd2aa2dd936695d0b30a3dcf8 (patch) | |
tree | dc2b3cf6c66ad92152df4121f9661755a03a4d19 | |
parent | 12964c7b93457a05441db081270a51083a1398f4 (diff) | |
parent | ee782fcb70c3d0d8f656406d346a3972f3200c83 (diff) | |
download | podman-7093885df73989acd2aa2dd936695d0b30a3dcf8.tar.gz podman-7093885df73989acd2aa2dd936695d0b30a3dcf8.tar.bz2 podman-7093885df73989acd2aa2dd936695d0b30a3dcf8.zip |
Merge pull request #14228 from rhatdan/api
Deleting an n use image should return conflict not system error
-rw-r--r-- | pkg/api/handlers/compat/images_remove.go | 5 | ||||
-rw-r--r-- | test/apiv2/10-images.at | 11 |
2 files changed, 15 insertions, 1 deletions
diff --git a/pkg/api/handlers/compat/images_remove.go b/pkg/api/handlers/compat/images_remove.go index f45b38c66..35bcb36aa 100644 --- a/pkg/api/handlers/compat/images_remove.go +++ b/pkg/api/handlers/compat/images_remove.go @@ -52,7 +52,10 @@ func RemoveImage(w http.ResponseWriter, r *http.Request) { utils.ImageNotFound(w, name, errors.Wrapf(err, "failed to find image %s", name)) return } - + if errors.Cause(err) == storage.ErrImageUsedByContainer { + utils.Error(w, http.StatusConflict, errors.Wrapf(err, "image %s is in use", name)) + return + } utils.Error(w, http.StatusInternalServerError, err) return } diff --git a/test/apiv2/10-images.at b/test/apiv2/10-images.at index a994f8e11..fd04e3f1b 100644 --- a/test/apiv2/10-images.at +++ b/test/apiv2/10-images.at @@ -156,6 +156,17 @@ t GET images/json?filters='{"reference":["test1"]}' 200 length=1 t DELETE libpod/images/test1:latest 200 +# to be used in prune until filter tests +podman image build -t docker.io/library/test1:latest -<<EOF +from alpine +RUN >file4 +EOF +podman create --name test1 test1 echo hi + +t DELETE images/test1:latest 409 +podman rm test1 +t DELETE images/test1:latest 200 + t GET "images/get?names=alpine" 200 '[POSIX tar archive]' podman pull busybox |