diff options
Diffstat (limited to 'test/TEST-41-ONESHOT-RESTART/testsuite.sh')
-rwxr-xr-x | test/TEST-41-ONESHOT-RESTART/testsuite.sh | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/test/TEST-41-ONESHOT-RESTART/testsuite.sh b/test/TEST-41-ONESHOT-RESTART/testsuite.sh new file mode 100755 index 0000000000..f7423dbf9a --- /dev/null +++ b/test/TEST-41-ONESHOT-RESTART/testsuite.sh @@ -0,0 +1,33 @@ +#!/bin/bash +set -ex +set -o pipefail + +systemd-analyze log-level debug +systemd-analyze log-target console + +# These three commands should succeed. +! systemd-run --unit=one -p Type=oneshot -p Restart=on-failure /bin/bash -c "exit 1" + +sleep 5 + +if [[ "$(systemctl show one.service -p NRestarts --value)" -le 0 ]]; then + exit 1 +fi + +TMP_FILE="/test-41-oneshot-restart-test" + +touch $TMP_FILE + +! systemd-run --unit=two -p StartLimitBurst=3 -p Type=oneshot -p Restart=on-failure -p ExecStart="/bin/bash -c \"printf a >> $TMP_FILE\"" /bin/bash -c "exit 1" + +sleep 5 + +if [[ $(cat $TMP_FILE) != "aaa" ]]; then + exit 1 +fi + +systemd-analyze log-level info + +echo OK > /testok + +exit 0 |