fix stop and pid file
authorDennis Schafroth <dennis@indexdata.com>
Tue, 4 Mar 2014 16:37:05 +0000 (17:37 +0100)
committerDennis Schafroth <dennis@indexdata.com>
Tue, 4 Mar 2014 16:37:05 +0000 (17:37 +0100)
scripts/zookeeper.sh

index 329f175..50491e4 100755 (executable)
@@ -1,4 +1,4 @@
-#/bin/bash
+#!/bin/bash
 
 NAME="indexdata-lui-solr-zookeeper"
 HOST=localhost
@@ -43,14 +43,19 @@ OPTIONS=" $SOLR_HOME_OPT -Djetty.port=$PORT ${BOOTSTRAP_OPT} -Dcollection.config
 if [ "$1" == "start" ]; then 
     if [ -f "${PID_FILE}" ] ; then 
        echo "pid file ${PID_FILE} exists. Already running?"
-       exit 1
+    else
+       java $OPTIONS  -jar start.jar > $LOG_FILE & 
+       echo $! > ${PID_FILE}
     fi
-    java $OPTIONS  -jar start.jar > $LOG_FILE & 
-    echo $! > ${PID_FILE}
 elif [ "$1" == "stop" ]; then 
     if [ -f "${PID_FILE}" ] ; then 
-       kill `cat ${PID_FILE}`
-       rm ${PID_FILE}
+       PID="`/bin/cat ${PID_FILE}`"
+       if [ "$PID" != "" ] ; then
+           kill $PID
+           /bin/rm ${PID_FILE}
+       else
+           echo "Unable to extract PID from ${PID_FILE}" 
+       fi
     else
        echo "No pid file ($PID_FILE) found"
     fi