mirror of
https://github.com/troglobit/finit.git
synced 2026-10-01 05:22:48 +07:00
Install start-stop-daemon in test root. Add S01-service.sh, which uses start-stop-daemon to start service.sh. Modify service.sh to respect signals, and not exit immediately when sleep exits due to SIGTERM. Remove PID file in signal callback and make sure to exit OK The test itself is basically a copy of the start-stop-service.sh test. Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
25 lines
397 B
Bash
Executable File
25 lines
397 B
Bash
Executable File
#!/bin/sh
|
|
|
|
cleanup()
|
|
{
|
|
echo "Got signal, stopping ..."
|
|
rm -f /run/service.pid
|
|
exit 0
|
|
}
|
|
|
|
# Hook SIGUSR1 and dump trace to file system
|
|
# shellcheck disable=SC2172
|
|
trap 'echo USR1 > /tmp/usr1.log' USR1
|
|
trap cleanup INT
|
|
trap cleanup TERM
|
|
trap cleanup QUIT
|
|
trap cleanup EXIT
|
|
|
|
echo $$ > /run/service.pid
|
|
|
|
# sleep may exit on known signal, so
|
|
# we cannot use 'set -e'
|
|
while true; do
|
|
sleep 1
|
|
done
|