]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
test: wait after sending a signal if necessary
authorFrantisek Sumsal <frantisek@sumsal.cz>
Sun, 14 May 2023 12:20:51 +0000 (14:20 +0200)
committerFrantisek Sumsal <frantisek@sumsal.cz>
Sun, 14 May 2023 17:32:07 +0000 (19:32 +0200)
On overloaded systems it might take a bit until the signal is sent,
processed, and the respective file is created.

test/units/testsuite-13.machinectl.sh

index 50dc716230a9ba6275f45ae3585193438a81227b..8ccf4c5dc35c1dc614a18bb6ca0d6e21ccd7b22d 100755 (executable)
@@ -89,17 +89,17 @@ machinectl disable long-running long-running long-running container1
 # Equivalent to machinectl kill --signal=SIGRTMIN+4 --kill-whom=leader
 rm -f /var/lib/machines/long-running/poweroff
 machinectl poweroff long-running
-test -e /var/lib/machines/long-running/poweroff
+timeout 10 sh -c "while ! test -e /var/lib/machines/long-running/poweroff; do sleep .5; done"
 machinectl poweroff long-running long-running long-running
 # Equivalent to machinectl kill --signal=SIGINT --kill-whom=leader
 rm -f /var/lib/machines/long-running/reboot
 machinectl reboot long-running
-test -e /var/lib/machines/long-running/reboot
+timeout 10 sh -c "while ! test -e /var/lib/machines/long-running/reboot; do sleep .5; done"
 machinectl reboot long-running long-running long-running
 # Skip machinectl terminate for now, as it doesn't play well with our "init"
 rm -f /var/lib/machines/long-running/trap
 machinectl kill --signal=SIGTRAP --kill-whom=leader long-running
-test -e /var/lib/machines/long-running/trap
+timeout 10 sh -c "while ! test -e /var/lib/machines/long-running/trap; do sleep .5; done"
 machinectl kill --signal=SIGTRAP --kill-whom=leader long-running long-running long-running
 # All used signals should've been caught by a handler
 [[ "$(machinectl show --property=State --value long-running)" == "running" ]]