From 9f69c4ecafca52e986fe7469d9087131a082a432 Mon Sep 17 00:00:00 2001 From: Chris Evich Date: Wed, 29 Jan 2020 11:08:43 -0500 Subject: System Tests: Force default signal handlers Recommended as part of: https://github.com/containers/libpod/issues/5004 and https://github.com/containers/crun/issues/230 Signed-off-by: Chris Evich --- test/system/130-kill.bats | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'test/system') diff --git a/test/system/130-kill.bats b/test/system/130-kill.bats index 5e098d754..e6a77222a 100644 --- a/test/system/130-kill.bats +++ b/test/system/130-kill.bats @@ -8,7 +8,14 @@ load helpers @test "podman kill - test signal handling in containers" { # Start a container that will handle all signals by emitting 'got: N' local -a signals=(1 2 3 4 5 6 8 10 12 13 14 15 16 20 21 22 23 24 25 26 64) - run_podman run -d $IMAGE sh -c "for i in ${signals[*]}; do trap \"echo got: \$i\" \$i; done; echo READY; while ! test -e /stop; do sleep 0.05; done;echo DONE" + # The --default-signal option not available in busybox implementation of 'env' in $IMAGE + # needed here to ensure handling of SIGINT inside container uses the default handler + _IMAGE=quay.io/libpod/fedora-minimal:latest + run_podman run -d $_IMAGE env --default-signal sh -c \ + "for i in ${signals[*]}; do trap \"echo got: \$i\" \$i; done; + echo READY; + while ! test -e /stop; do sleep 0.05; done; + echo DONE" cid="$output" # Run 'logs -f' on that container, but run it in the background with -- cgit v1.2.3-54-g00ecf From 4511e15f8cde510e2224ac3d090f51fa120359bd Mon Sep 17 00:00:00 2001 From: Chris Evich Date: Mon, 24 Feb 2020 12:33:44 -0500 Subject: Fix kill test obtaining CID It's possible/likely the container image for the test will need to be pulled as part of the `run` command. Due to the way BATS handles output, messages regarding image-pull could be misinterpreted as the container's CID. Force the CID to be obtained by only the last line of output. Signed-off-by: Chris Evich --- test/system/130-kill.bats | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'test/system') diff --git a/test/system/130-kill.bats b/test/system/130-kill.bats index e6a77222a..8085b171e 100644 --- a/test/system/130-kill.bats +++ b/test/system/130-kill.bats @@ -16,7 +16,8 @@ load helpers echo READY; while ! test -e /stop; do sleep 0.05; done; echo DONE" - cid="$output" + # Ignore output regarding pulling/processing container images + cid=$(echo "$output" | tail -1) # Run 'logs -f' on that container, but run it in the background with # redirection to a named pipe from which we (foreground job) read -- cgit v1.2.3-54-g00ecf