X-Git-Url: http://xvm.mit.edu/gitweb/invirt/packages/invirt-dev.git/blobdiff_plain/1df2c5ee4af289b6c68d28b021cceaacecb61b61..7f8e250069417ac186bdd601c3b2857e34fe8434:/debian/invirt-dev.init diff --git a/debian/invirt-dev.init b/debian/invirt-dev.init index 372d8f2..bb3527c 100755 --- a/debian/invirt-dev.init +++ b/debian/invirt-dev.init @@ -13,9 +13,14 @@ # Do NOT "set -e" -NAME=invirt-dev +NAME=invirtibuilder +DESC="the Invirt build daemon" +DAEMON="/usr/bin/$NAME" +PIDFILE="/var/run/$NAME.pid" GEN_FILES=/srv/repository/conf/distributions +[ -x "$DAEMON" ] || exit 0 + . /lib/init/std-init.sh . /lib/init/gen-files.sh @@ -37,16 +42,40 @@ do_start() invirt-build-conf || ret=2 + if [ "$ret" = 0 ]; then + # Return + # 0 if daemon has been started + # 1 if daemon was already running + # 2 if daemon could not be started + log_daemon_msg "Starting $DESC" "$NAME" + if daemon --running -n $NAME; then + log_daemon_msg "$NAME is already running!" + return 1 + fi + daemon -r -O daemon.info -E daemon.err -n $NAME -U $DAEMON || return 2 + fi return $ret } do_stop() { - : + # Return + # 0 if daemon has been stopped + # 1 if daemon was already stopped + # 2 if daemon could not be stopped + # other if a failure occurred + log_daemon_msg "Stopping $DESC" "$NAME" + daemon --stop -n $NAME + RETVAL="$?" + [ "$RETVAL" = 2 ] && return 2 + # Many daemons don't delete their pidfiles when they exit. + # rm -f $PIDFILE + return "$RETVAL" } do_reload() { + do_stop do_start }