puppet-hound/files/hound.init

72 lines
1.1 KiB
Bash

#!/bin/sh
### BEGIN INIT INFO
# Provides: hound
# Required-Start: $network $local_fs
# Required-Stop:
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Hound Source Code Indexer
#### END INIT INFO
NAME=hound
USER=hound
GROUP=hound
HOUND_HOME="/home/hound"
CMD_DIR="$HOUND_HOME/bin"
CMD="houndd"
CMD_ARGS=""
LOG_FILE=/var/log/hound.log
########## Common
PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/bin:$PATH
SSD=start-stop-daemon
PID=/var/run/${NAME}.pid
start () {
echo -n "Start $NAME"
$SSD --start --pidfile $PID --make-pidfile -u $USER -g $GROUP \
-d $HOUND_HOME --background \
--startas /bin/bash -- -c "exec $CMD_DIR/$CMD >>$LOG_FILE 2>&1"
RETVAL=$?
echo
return $RETVAL
}
stop () {
echo -n "Stop $NAME"
$SSD --stop --oknodo --pidfile $PID --signal INT
RETVAL=$?
echo
return $RETVAL
}
restart () {
stop
sleep 1
start
}
case "$1" in
start)
start
;;
stop)
stop
;;
status)
echo "not supported"
;;
restart)
restart
;;
*)
echo "Usage: $0 {start|stop|restart}"
exit 1
esac
exit $RETVAL