#! /bin/sh
#
# vmware-rbd-watchdog       Start/Stop the VMware RBD Watchdog daemon
#
# chkconfig: 345 80 05
# description: 
# processname: rbd-watchdog-linux

### BEGIN INIT INFO
# Provides: vmware-rbd-watchdog
# Required-Start: $syslog $local_fs $remote_fs $network
# Should-Start: apache2
# Required-Stop: $syslog $local_fs $remote_fs $network
# Default-Start: 3 5
# Default-Stop: 0 1 2 6
# Description: VMware AutoDeploy
### END INIT INFO

prog="/usr/bin/rbd-watchdog-linux"
RETVAL=0

# If the '/etc/profile' file exists source it, since it contains CIS related
# variables that were provided during CIS deployment.
[ -f /etc/profile ] && . /etc/profile

WATCHDOG_OPTIONS=""
[ -f /etc/sysconfig/rbd-watchdog ] && . /etc/sysconfig/rbd-watchdog

PIDFILE="/var/run/vmware-rbd/watchdog.pid"
LOCKFILE="/var/run/rbd.lck"

. /etc/rc.status
rc_reset
case "$1" in
    start)
	export LD_LIBRARY_PATH="/var/lib/rbd/lib-dynload:$LD_LIBRARY_PATH"
	echo -n "Starting $prog: "
	/usr/bin/lockfile -l30 $LOCKFILE > /dev/null 2<&1
	startproc -W $PIDFILE -p $PIDFILE \
	    /usr/bin/rbd-watchdog-linux $WATCHDOG_OPTIONS
	rc_status -v
	rm -rf $LOCKFILE
	;;
    stop)
	echo -n "Stopping $prog: "
	killproc -INT $prog
	MAX_WAIT=60
	attempts=0
	while checkproc $prog && [ "$attempts" -lt "$MAX_WAIT" ] ; do
		attempts=$((attempts+1))
		sleep 1
	done
	rc_status -v
	;;
    restart)
	$0 stop
	$0 start

	rc_status
	;;
    reload-apache)
	killproc -L -USR1 /usr/sbin/httpd

	rc_status
	;;
    status)
	echo -n "Checking for $prog: "
	checkproc -p $PIDFILE $prog
	rc_status -v
	;;
    *)
	echo "usage: $0 {start|stop|restart|status}"
	exit 1
esac

rc_exit
