Rev 3 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed
#!/bin/sh
### BEGIN INIT INFO
# Provides: pyscrabble
# Required-Start: $local_fs $remote_fs
# Required-Stop: $local_fs $remote_fs
# Default-Start: 2 3 4 5
# Default-Stop: S 0 1 6
# Short-Description: PyScrabble server
# Description: Controls the PyScrabble server
### END INIT INFO
#
# Author: Will Gray <graywh@gmail.com>
# Version: 1
#
set -e
PATH=/sbin:/bin:/usr/bin
DESC="PyScrabble server"
NAME=python
NAME2=pyscrabble-server
DAEMON=/usr/games/pyscrabble-server
PIDFILE=/var/run/$NAME2.pid
SCRIPTNAME=/etc/init.d/$NAME2
# Gracefully exit if the package has been removed.
test -x $DAEMON || exit 0
USER="pyscrabble"
# Read config file if it is present.
if [ -r /etc/default/$NAME2 ]
then
. /etc/default/$NAME2
fi
#
# Function that starts the daemon/service.
#
d_start() {
start-stop-daemon --start --quiet --background --make-pidfile --pidfile $PIDFILE \
--chuid "$USER" --exec $DAEMON \
|| echo -n " already running"
}
#
# Function that stops the daemon/service.
#
d_stop() {
start-stop-daemon --stop --quiet --pidfile $PIDFILE \
--name $NAME \
|| echo -n " not running"
rm -f $PIDFILE
}
case "$1" in
start)
echo -n "Starting $DESC: $NAME2"
d_start
echo "."
;;
stop)
echo -n "Stopping $DESC: $NAME2"
d_stop
echo "."
;;
#reload)
#
# If the daemon can reload its configuration without
# restarting (for example, when it is sent a SIGHUP),
# then implement that here.
#
# If the daemon responds to changes in its config file
# directly anyway, make this an "exit 0".
#
# echo -n "Reloading $DESC configuration..."
# d_reload
# echo "done."
#;;
restart|force-reload)
#
# If the "reload" option is implemented, move the "force-reload"
# option to the "reload" entry above. If not, "force-reload" is
# just the same as "restart".
#
echo -n "Restarting $DESC: $NAME2"
d_stop
# One second might not be time enough for a daemon to stop,
# if this happens, d_start will fail (and dpkg will break if
# the package is being upgraded). Change the timeout if needed
# be, or change d_stop to have start-stop-daemon use --retry.
# Notice that using --retry slows down the shutdown process somewhat.
sleep 1
d_start
echo "."
;;
*)
# echo "Usage: $SCRIPTNAME {start|stop|restart|reload|force-reload}" >&2
echo "Usage: $SCRIPTNAME {start|stop|restart|force-reload}" >&2
exit 1
;;
esac
exit 0