Systemd/test/TEST-23-TYPE-EXEC/testsuite.sh

35 lines
1.1 KiB
Bash
Raw Normal View History

#!/usr/bin/env bash
2018-07-17 12:35:12 +02:00
set -ex
set -o pipefail
2019-04-03 08:19:08 +02:00
systemd-analyze log-level debug
systemd-analyze log-target console
2018-07-17 12:35:12 +02:00
# Create a binary for which execve() will fail
touch /tmp/brokenbinary
chmod +x /tmp/brokenbinary
# These three commands should succeed.
systemd-run --unit=one -p Type=simple /bin/sleep infinity
systemd-run --unit=two -p Type=simple -p User=idontexist /bin/sleep infinity
systemd-run --unit=three -p Type=simple /tmp/brokenbinary
# And now, do the same with Type=exec, where the latter two should fail
systemd-run --unit=four -p Type=exec /bin/sleep infinity
! systemd-run --unit=five -p Type=exec -p User=idontexist /bin/sleep infinity
! systemd-run --unit=six -p Type=exec /tmp/brokenbinary
systemd-run --unit=seven -p KillSignal=SIGTERM -p RestartKillSignal=SIGINT -p Type=exec /bin/sleep infinity
# Both TERM and SIGINT happen to have the same number on all architectures
test $(systemctl show --value -p KillSignal seven.service) -eq 15
test $(systemctl show --value -p RestartKillSignal seven.service) -eq 2
systemctl restart seven.service
systemctl stop seven.service
2019-04-03 08:19:08 +02:00
systemd-analyze log-level info
2018-07-17 12:35:12 +02:00
echo OK > /testok
exit 0