aboutsummaryrefslogtreecommitdiff
path: root/test/system
diff options
context:
space:
mode:
authorDaniel J Walsh <dwalsh@redhat.com>2022-07-24 17:58:36 -0400
committerDaniel J Walsh <dwalsh@redhat.com>2022-07-28 05:54:58 -0400
commitde13dea86347eb5eaebe88d4a10eb4ef2622e738 (patch)
tree5889a5c6e5f3a84419bb00f1c0e551718df7ef3c /test/system
parente1238ceb89c83e9d6c4f48cdff4d073620ab038b (diff)
downloadpodman-de13dea86347eb5eaebe88d4a10eb4ef2622e738.tar.gz
podman-de13dea86347eb5eaebe88d4a10eb4ef2622e738.tar.bz2
podman-de13dea86347eb5eaebe88d4a10eb4ef2622e738.zip
With --rm option remove container if podman run fails
Fixes https://github.com/containers/podman/issues/15049 Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
Diffstat (limited to 'test/system')
-rw-r--r--test/system/030-run.bats16
1 files changed, 16 insertions, 0 deletions
diff --git a/test/system/030-run.bats b/test/system/030-run.bats
index d028a5ac7..908c169ee 100644
--- a/test/system/030-run.bats
+++ b/test/system/030-run.bats
@@ -871,4 +871,20 @@ EOF
run_podman container rm -fa
}
+@test "podman run failed --rm " {
+ port=$(random_free_port)
+
+ # Run two containers with the same port bindings. The second must fail
+ run_podman run -p $port:80 --rm -d --name c_ok $IMAGE top
+ run_podman 126 run -p $port:80 -d --name c_fail_no_rm $IMAGE top
+ run_podman 126 run -p $port:80 --rm -d --name c_fail_with_rm $IMAGE top
+ # Prior to #15060, the third container would still show up in ps -a
+ run_podman ps -a --sort names --format '{{.Image}}--{{.Names}}'
+ is "$output" "$IMAGE--c_fail_no_rm
+$IMAGE--c_ok" \
+ "podman ps -a shows running & failed containers, but not failed-with-rm"
+
+ run_podman container rm -f -t 0 c_ok c_fail_no_rm
+}
+
# vim: filetype=sh