All pastes #359033 Raw Edit

deuce868

public text v1 · immutable
#359033 ·published 2007-02-16 14:47 UTC
rendered paste body
rharding@raken:/tmp/supervisor-2.1b1$ sudo /etc/init.d/supervisor start
Starting supervisor daemon: supervisor.

rharding@raken:/tmp/supervisor-2.1b1$ sudo /etc/init.d/supervisor stop
Stopping supervisor daemon: supervisor not running.

rharding@raken:/tmp/supervisor-2.1b1$ ps aux | grep super
root      8987  0.0  0.2   9112  5060 ?        Ss   09:42   0:00 /usr/bin/python /usr/local/bin/supervisord
rharding  9031  0.0  0.0   2800   768 pts/3    S+   09:42   0:00 grep super

rharding@raken:/tmp/supervisor-2.1b1$ sudo start-stop-daemon --stop --quiet --pidfile "/var/run/supervisord.pid" 

rharding@raken:/tmp/supervisor-2.1b1$ ps aux | grep super
rharding  9130  0.0  0.0   2800   764 pts/2    S+   09:43   0:00 grep super

#! /bin/sh
### BEGIN INIT INFO
# Provides:          supervisor
# 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
#
# Author:    Christopher Arndt <chris@chrisarndt.de>
#
# Version:    @(#)supervisor  1.0  05-Dec-2006
#

set -e

PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
DESC="supervisor daemon"
NAME="supervisor"
DAEMON="/usr/local/bin/${NAME}d"
PIDFILE="/var/run/${NAME}d.pid"
SCRIPTNAME="/etc/init.d/$NAME"
CONFFILE="/etc/${NAME}d.conf"

# Gracefully exit if the package has been removed.
test -x "$DAEMON" || exit 0

# supervisord not start up without a configuration
test -r "$CONFFILE" || exit 0

# Read config file if it is present.
if [ -r "/etc/default/$NAME" ]; then
    . "/etc/default/$NAME"
fi

test "x$START_SUPERVISOR" = "xyes" || exit 0

#
#    Function that starts the daemon/service.
#
d_start() {
    start-stop-daemon --start --quiet --pidfile "$PIDFILE" \
        --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"
}

#
#    Function that sends a SIGHUP to the daemon/service.
#
d_reload() {
    start-stop-daemon --stop --quiet --pidfile "$PIDFILE" \
        --name "$NAME" --signal 1
}

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
    # 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|force-reload}" >&2
    exit 3
    ;;
esac

exit 0