From eb444d6819869fb5d9bc72fb934bdf18c406bd0f Mon Sep 17 00:00:00 2001 From: Scott Schneider Date: Wed, 12 Nov 2014 10:41:35 -0800 Subject: [PATCH] Adding init.d script --- scripts/vmpooler_init.sh | 61 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 61 insertions(+) create mode 100755 scripts/vmpooler_init.sh diff --git a/scripts/vmpooler_init.sh b/scripts/vmpooler_init.sh new file mode 100755 index 0000000..96ef5fc --- /dev/null +++ b/scripts/vmpooler_init.sh @@ -0,0 +1,61 @@ +#!/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