diff options
author | OpenShift Merge Robot <openshift-merge-robot@users.noreply.github.com> | 2021-10-12 21:27:09 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-10-12 21:27:09 +0200 |
commit | c90beedbe160eb6e8094b492091231f3c5838006 (patch) | |
tree | 128d2f9660ed3b1fdac69d50cba8e32ddec4f2a4 | |
parent | 03095bd090e067ef1a2978a2107ec07ff3f95a2c (diff) | |
parent | 7580c227348af2a0906a692ad6a44348dc3eefbc (diff) | |
download | podman-c90beedbe160eb6e8094b492091231f3c5838006.tar.gz podman-c90beedbe160eb6e8094b492091231f3c5838006.tar.bz2 podman-c90beedbe160eb6e8094b492091231f3c5838006.zip |
Merge pull request #11925 from rhatdan/volume
Remove a volume with --force if container is running
-rw-r--r-- | libpod/runtime_volume_linux.go | 6 | ||||
-rw-r--r-- | test/system/160-volumes.bats | 8 |
2 files changed, 9 insertions, 5 deletions
diff --git a/libpod/runtime_volume_linux.go b/libpod/runtime_volume_linux.go index b08693529..ed3cc971c 100644 --- a/libpod/runtime_volume_linux.go +++ b/libpod/runtime_volume_linux.go @@ -230,11 +230,7 @@ func (r *Runtime) removeVolume(ctx context.Context, v *Volume, force bool, timeo logrus.Debugf("Removing container %s (depends on volume %q)", ctr.ID(), v.Name()) - // TODO: do we want to set force here when removing - // containers? - // I'm inclined to say no, in case someone accidentally - // wipes a container they're using... - if err := r.removeContainer(ctx, ctr, false, false, false, timeout); err != nil { + if err := r.removeContainer(ctx, ctr, force, false, false, timeout); err != nil { return errors.Wrapf(err, "error removing container %s that depends on volume %s", ctr.ID(), v.Name()) } } diff --git a/test/system/160-volumes.bats b/test/system/160-volumes.bats index 490d635e5..7128f1b65 100644 --- a/test/system/160-volumes.bats +++ b/test/system/160-volumes.bats @@ -97,6 +97,14 @@ Labels.l | $mylabel run_podman volume rm $myvolume } +# Removing volumes with --force +@test "podman volume rm --force" { + run_podman run -d --volume myvol:/myvol $IMAGE top + cid=$output + run_podman 2 volume rm myvol + is "$output" "Error: volume myvol is being used by the following container(s): $cid: volume is being used" "should error since container is running" + run_podman volume rm myvol --force +} # Running scripts (executables) from a volume @test "podman volume: exec/noexec" { |