diff --git a/solr/files/solr.init b/solr/files/solr.init index 8766916..26ac10a 100644 --- a/solr/files/solr.init +++ b/solr/files/solr.init @@ -15,23 +15,24 @@ # Description: Solr server ### END INIT INFO -SOLRUSER=solr -SOLRPATH="/srv/solr/run" -CONFIGPATH="/srv/solr/cores" +SOLRUSER="solr" +RUNDIR="/srv/solr/run" +HOMEDIR="/srv/solr/cores" +LOG4JCONFIG="file:///${RUNDIR}/resources/log4j.properties" MEMORYLIMIT="-Xms1024M -Xmx4096M" if [ `id -u` != "0" ]; then echo "This script must be run with root privileges." && exit 1 fi -if [ ! -e "${SOLRPATH}/start.jar" ]; then - echo "Failed to find Solr jar file: ${SOLRPATH}/start.jar" +if [ ! -e "${RUNDIR}/start.jar" ]; then + echo "Failed to find Solr jar file: ${RUNDIR}/start.jar" echo "Check /etc/init.d/solr file for correct settings." exit 1 fi -if [ ! -e "${CONFIGPATH}/solr.xml" ]; then - echo "Failed to find Solr config files: ${CONFIGPATH}/solr.xml" +if [ ! -e "${HOMEDIR}/solr.xml" ]; then + echo "Failed to find Solr config files: ${HOMEDIR}/solr.xml" echo "Check /etc/init.d/solr file for correct settings." exit 1 fi @@ -49,13 +50,13 @@ start_solr() { # Start Solr echo "Starting Solr" - COMMAND="java -Djetty.host=127.0.0.1 -Dsolr.solr.home=${CONFIGPATH} ${MEMORYLIMIT} -jar start.jar >solr.log 2>&1 &" - su -s /bin/sh - ${SOLRUSER} -c "umask 007; cd ${SOLRPATH}; ${COMMAND}" + COMMAND="java -Djetty.host=127.0.0.1 -Dlog4j.configuration=${LOG4JCONFIG} -Dsolr.solr.home=${HOMEDIR} ${MEMORYLIMIT} -jar start.jar > /dev/null &" + su -s /bin/sh - ${SOLRUSER} -c "umask 007; cd ${RUNDIR}; ${COMMAND}" } stop_solr() { echo -n "Stopping Solr: " - pkill -u $SOLRUSER -f start.jar + pkill -u ${SOLRUSER} -f start.jar RETVAL=$? if [ $RETVAL -eq 0 ]; then echo "Success" @@ -80,7 +81,7 @@ case "$1" in ;; status) - pgrep -u $SOLRUSER -f start.jar >/dev/null + pgrep -u ${SOLRUSER} -f start.jar >/dev/null exit $? ;; diff --git a/solr/manifests/init.pp b/solr/manifests/init.pp index 1b27353..5dba6da 100644 --- a/solr/manifests/init.pp +++ b/solr/manifests/init.pp @@ -60,6 +60,7 @@ class solr { "/srv/solr/cores/lib", "/srv/solr/index", "/srv/solr/run", + "/srv/solr/run/logs", "/srv/solr/run/solr-webapp", "/srv/solr/spool", ]: ensure => directory, @@ -99,6 +100,11 @@ class solr { target => "/usr/local/share/solr/example/lib", require => File["/srv/solr/run"], } + file { "/srv/solr/run/resources": + ensure => link, + target => "/usr/local/share/solr/example/resources", + require => File["/srv/solr/run"], + } file { "/srv/solr/run/webapps": ensure => link, target => "/usr/local/share/solr/example/webapps",