diff --git a/solr/files/solr.init b/solr/files/solr.init index 940c251..f8fb313 100644 --- a/solr/files/solr.init +++ b/solr/files/solr.init @@ -40,7 +40,7 @@ fi start_solr() { # Check to see if Solr is running - pgrep -u solr -f start.jar > /dev/null + pgrep -u $SOLRUSER -f start.jar >/dev/null RUNNING=$? if [ $RUNNING -eq 0 ]; then echo "[FAILED]" @@ -52,13 +52,13 @@ start_solr() { # Start Solr echo "Starting Solr" - COMMAND="java -Dsolr.solr.home=${CONFIGPATH} ${MEMORYLIMIT} -jar start.jar > solr.log 2>&1 &" + COMMAND="java -Dsolr.solr.home=${CONFIGPATH} ${MEMORYLIMIT} -jar start.jar >solr.log 2>&1 &" su -s /bin/sh - ${SOLRUSER} -c "umask 007; cd ${SOLRPATH}; ${COMMAND}" } stop_solr() { echo -n "Stopping Solr: " - pkill -u solr -f start.jar + pkill -u $SOLRUSER -f start.jar RETVAL=$? if [ $RETVAL -eq 0 ]; then echo "Success" @@ -71,16 +71,23 @@ case "$1" in start) start_solr ;; + stop) stop_solr ;; + restart) stop_solr sleep 2 start_solr ;; + + status) + pgrep -u $SOLRUSER -f start.jar >/dev/null + ;; + *) - echo "Usage: $0 {start|stop|restart}" + echo "Usage: $0 {start|stop|restart|status}" exit 1 ;; esac diff --git a/solr/manifests/init.pp b/solr/manifests/init.pp index 639075e..23b2113 100644 --- a/solr/manifests/init.pp +++ b/solr/manifests/init.pp @@ -124,6 +124,7 @@ class solr { } service { "solr": + ensure => running, enable => true, }