79 lines
1.9 KiB
Bash
Executable File
79 lines
1.9 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
### BEGIN INIT INFO
|
|
# Provides: airtime-playout
|
|
# Required-Start: $local_fs $remote_fs $network $syslog $all
|
|
# Required-Stop: $local_fs $remote_fs $network $syslog
|
|
# Default-Start: 2 3 4 5
|
|
# Default-Stop: 0 1 6
|
|
# Short-Description: Manage airtime-playout daemon
|
|
### END INIT INFO
|
|
|
|
USERID=www-data
|
|
GROUPID=www-data
|
|
NAME=airtime-playout
|
|
|
|
DAEMON=/usr/bin/$NAME
|
|
PIDFILE=/var/run/$NAME.pid
|
|
|
|
# Exit if the package is not installed
|
|
[ -x "$DAEMON" ] || exit 0
|
|
|
|
# Read configuration variable file if it is present
|
|
[ -r /etc/default/$NAME ] && . /etc/default/$NAME
|
|
|
|
# Load the VERBOSE setting and other rcS variables
|
|
. /lib/init/vars.sh
|
|
|
|
# Define LSB log_* functions.
|
|
# Depend on lsb-base (>= 3.2-14) to ensure that this file is present
|
|
# and status_of_proc is working.
|
|
. /lib/lsb/init-functions
|
|
|
|
start () {
|
|
start-stop-daemon --start --background --quiet --chuid $USERID:$GROUPID \
|
|
--make-pidfile --pidfile $PIDFILE --startas $DAEMON
|
|
}
|
|
|
|
stop () {
|
|
# Send TERM after 5 seconds, wait at most 30 seconds.
|
|
start-stop-daemon --stop --oknodo --retry TERM/5/0/30 --quiet --pidfile $PIDFILE
|
|
rm -f $PIDFILE
|
|
}
|
|
|
|
case "${1:-''}" in
|
|
'start')
|
|
# start commands here
|
|
echo -n "Starting $NAME: "
|
|
start
|
|
echo "Done."
|
|
;;
|
|
'stop')
|
|
# stop commands here
|
|
echo -n "Stopping $NAME: "
|
|
stop
|
|
echo "Done."
|
|
;;
|
|
'restart')
|
|
# restart commands here
|
|
echo -n "Restarting $NAME: "
|
|
stop
|
|
start
|
|
echo "Done."
|
|
;;
|
|
'force-reload')
|
|
# reload commands here
|
|
echo -n "Reloading $NAME: "
|
|
stop
|
|
start
|
|
echo "Done."
|
|
;;
|
|
'status')
|
|
status_of_proc "$DAEMON" "$NAME" && exit 0 || exit $?
|
|
;;
|
|
*) # no parameter specified
|
|
echo "Usage: $SELF start|stop|restart|status"
|
|
exit 1
|
|
;;
|
|
esac
|