mirror of
https://github.com/containers/podman.git
synced 2025-12-02 02:58:03 +08:00
Merge pull request #17040 from giuseppe/podman-rm-f-no-processes
podman: podman rm -f doesn't leave processes
This commit is contained in:
@@ -113,9 +113,8 @@ load helpers
|
||||
is "$output" "" "Should print no output"
|
||||
}
|
||||
|
||||
@test "podman container rm doesn't affect stopping containers" {
|
||||
local cname=c$(random_string 30)
|
||||
run_podman run -d --name $cname \
|
||||
function __run_healthcheck_container() {
|
||||
run_podman run -d --name $1 \
|
||||
--health-cmd /bin/false \
|
||||
--health-interval 1s \
|
||||
--health-retries 2 \
|
||||
@@ -125,6 +124,11 @@ load helpers
|
||||
--health-start-period 0 \
|
||||
--stop-signal SIGTERM \
|
||||
$IMAGE sleep infinity
|
||||
}
|
||||
|
||||
@test "podman container rm doesn't affect stopping containers" {
|
||||
local cname=c$(random_string 30)
|
||||
__run_healthcheck_container $cname
|
||||
local cid=$output
|
||||
|
||||
# We'll use the PID later to confirm that container is not running
|
||||
@@ -159,4 +163,29 @@ load helpers
|
||||
fi
|
||||
}
|
||||
|
||||
@test "podman container rm --force doesn't leave running processes" {
|
||||
local cname=c$(random_string 30)
|
||||
__run_healthcheck_container $cname
|
||||
local cid=$output
|
||||
|
||||
# We'll use the PID later to confirm that container is not running
|
||||
run_podman inspect --format '{{.State.Pid}}' $cname
|
||||
local pid=$output
|
||||
|
||||
for i in {1..10}; do
|
||||
run_podman inspect $cname --format '{{.State.Status}}'
|
||||
if [ "$output" = "stopping" ]; then
|
||||
break
|
||||
fi
|
||||
|
||||
sleep 0.5
|
||||
done
|
||||
|
||||
run_podman rm -f $cname
|
||||
|
||||
if kill -0 $pid; then
|
||||
die "Container $cname process is still running (pid $pid)"
|
||||
fi
|
||||
}
|
||||
|
||||
# vim: filetype=sh
|
||||
|
||||
Reference in New Issue
Block a user