Skip to content

Instantly share code, notes, and snippets.

@simonw
Forked from joonathan/howto.txt
Created February 11, 2010 23:49
Show Gist options
  • Save simonw/302136 to your computer and use it in GitHub Desktop.
Save simonw/302136 to your computer and use it in GitHub Desktop.
Save the supervisord.initscript script as /etc/init.d/supervisord
Run /usr/sbin/update-rc.d -f supervisord defaults
#!/bin/sh
### BEGIN INIT INFO
# Provides: supervisor
# Required-Start: $syslog
# Required-Stop: $syslog
# Should-Start: $local_fs
# Should-Stop: $local_fs
# Default-Start: 2 3 4 5
# Default-Stop: S 0 1 6
# Short-Description: Starts/stops the supervisor daemon
# Description: This starts and stops the supervisor dameon
# which is used to run and monitor arbitrary programs as
# services, e.g. application servers etc.
### END INIT INFO
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
DESC="supervisor daemon"
NAME="supervisor"
DAEMON="/usr/bin/${NAME}d"
SUPERVISORCTL="/usr/bin/${NAME}ctl"
PIDFILE="/var/run/${NAME}d.pid"
SCRIPTNAME="/etc/init.d/$NAME"
CONFFILE="/etc/${NAME}d.conf"
test -x "$DAEMON" || exit 0
test -r "$CONFFILE" || exit 0
if [ -r "/etc/default/$NAME" ]; then
. "/etc/default/$NAME"
fi
set -e
d_start() {
start-stop-daemon --start --quiet --pidfile "$PIDFILE" \
--exec "$DAEMON" \
|| echo -n " already running"
}
d_stop() {
$SUPERVISORCTL shutdown
}
d_reload() {
$SUPERVISORCTL reload
}
case "$1" in
start)
echo -n "Starting $DESC: $NAME"
d_start
echo "."
;;
stop)
echo -n "Stopping $DESC: $NAME"
d_stop
echo "."
;;
reload|force-reload)
echo -n "Reloading $DESC configuration..."
d_reload
echo "done."
;;
restart)
echo -n "Restarting $DESC: $NAME"
d_stop
sleep 1
d_start
echo "."
;;
*)
echo "Usage: "$SCRIPTNAME" {start|stop|restart|force-reload}" >&2
exit 3
;;
esac
exit 0
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment