diff --git a/Makefile b/Makefile index 9e5040f..6270dd5 100644 --- a/Makefile +++ b/Makefile @@ -26,7 +26,8 @@ docker-image: itest: itest_lucid itest_precise itest_trusty itest_wheezy itest_jessie itest_stretch itest_lucid: builddeb-docker - docker run -v $(PWD):/mnt:ro ubuntu:lucid $(DOCKER_TEST) + docker run -v $(PWD):/mnt:ro ubuntu:lucid \ + sh -ec "apt-get -y install timeout; $(DOCKER_TEST)" itest_precise: builddeb-docker docker run -v $(PWD):/mnt:ro ubuntu:precise $(DOCKER_TEST) diff --git a/debian/rules b/debian/rules index cbe925d..483d681 100755 --- a/debian/rules +++ b/debian/rules @@ -1,3 +1,6 @@ #!/usr/bin/make -f %: dh $@ + +override_dh_builddeb: + dh_builddeb -- -Zgzip diff --git a/test/test b/test/test index 8f148b5..7715df7 100755 --- a/test/test +++ b/test/test @@ -7,16 +7,18 @@ # (piping spawns additional subshells and makes it hard to get the right PID) fifo=$(mktemp -u) mkfifo -m 600 "$fifo" +read_cmd="timeout 1 head -n1 $fifo" + dumb-init ./print-signals "$fifo" & pid="$!" # Wait for `print-signals` to indicate it's ready. -head -n1 "$fifo" > /dev/null +$read_cmd > /dev/null for expected in $(catchable_signals); do kill -s "$expected" "$pid" echo -n "Sent signal ${expected}... " - received=$(timeout 1 head -n1 "$fifo") || { + received=$($read_cmd) || { echo echo "Error: Didn't receive signal within 1 second." exit 1