mirror of
https://github.com/puppetlabs/vmpooler.git
synced 2026-01-26 18:08:42 -05:00
61 lines
1.3 KiB
Bash
Executable file
61 lines
1.3 KiB
Bash
Executable file
#!/bin/bash
|
|
# vmpooler
|
|
# chkconfig: 345 20 80
|
|
|
|
DAEMON_PATH="/var/lib/vmpooler"
|
|
|
|
DAEMON="/usr/bin/jruby"
|
|
DAEMONOPTS="vmpooler -s Puma -E production"
|
|
|
|
NAME="vmpooler"
|
|
DESC="Provide configurable 'pools' of available (running) virtual machines"
|
|
PIDFILE=/var/run/$NAME.pid
|
|
SCRIPTNAME=/etc/init.d/$NAME
|
|
|
|
case "$1" in
|
|
start)
|
|
printf "%-50s" "Starting $NAME..."
|
|
cd $DAEMON_PATH
|
|
PID=`$DAEMON $DAEMONOPTS > /dev/null 2>&1 & echo $!`
|
|
if [ -z $PID ]; then
|
|
printf "%s\n" "fail"
|
|
else
|
|
echo $PID > $PIDFILE
|
|
printf "%s\n" "ok"
|
|
fi
|
|
;;
|
|
status)
|
|
printf "%-50s" "Checking $NAME..."
|
|
if [ -f $PIDFILE ]; then
|
|
PID=`cat $PIDFILE`
|
|
if [ -z "`ps axf | grep ${PID} | grep -v grep`" ]; then
|
|
printf "%s\n" "process dead but pidfile exists"
|
|
else
|
|
printf "%s\n" "running"
|
|
fi
|
|
else
|
|
printf "%s\n" "not running"
|
|
fi
|
|
;;
|
|
stop)
|
|
printf "%-50s" "Stopping $NAME..."
|
|
PID=`cat $PIDFILE`
|
|
cd $DAEMON_PATH
|
|
if [ -f $PIDFILE ]; then
|
|
kill -HUP $PID
|
|
printf "%s\n" "ok"
|
|
rm -f $PIDFILE
|
|
else
|
|
printf "%s\n" "pidfile not found"
|
|
fi
|
|
;;
|
|
|
|
restart)
|
|
$0 stop
|
|
$0 start
|
|
;;
|
|
|
|
*)
|
|
echo "Usage: $0 {status|start|stop|restart}"
|
|
exit 1
|
|
esac
|