solr: Improved init script
This commit is contained in:
parent
8276a8cc30
commit
0472e6b08e
2 changed files with 43 additions and 23 deletions
|
@ -140,6 +140,7 @@ class solr {
|
||||||
ensure => running,
|
ensure => running,
|
||||||
enable => true,
|
enable => true,
|
||||||
hasstatus => true,
|
hasstatus => true,
|
||||||
|
hasrestart => true,
|
||||||
}
|
}
|
||||||
|
|
||||||
file { "/etc/solr":
|
file { "/etc/solr":
|
||||||
|
|
|
@ -48,51 +48,70 @@ if [ ! -e "${HOMEDIR}/solr.xml" ]; then
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
start_solr() {
|
do_status() {
|
||||||
# Check to see if Solr is running
|
|
||||||
pgrep -u ${SOLRUSER} -f start.jar >/dev/null
|
pgrep -u ${SOLRUSER} -f start.jar >/dev/null
|
||||||
RUNNING=$?
|
}
|
||||||
if [ $RUNNING -eq 0 ]; then
|
|
||||||
echo "[FAILED]"
|
do_start() {
|
||||||
echo
|
echo -n "Starting Solr... "
|
||||||
echo "Reason: Solr already running"
|
|
||||||
|
# Check to see if Solr is running
|
||||||
|
do_status
|
||||||
|
if [ $? -eq 0 ]; then
|
||||||
|
echo "failed. Solr already running."
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Start Solr
|
# Start Solr
|
||||||
echo "Starting Solr"
|
|
||||||
COMMAND="java -Djetty.host=127.0.0.1 -Dlog4j.configuration=${LOG4JCONFIG} -Dsolr.solr.home=${HOMEDIR} ${MEMORYLIMIT} -jar start.jar > /dev/null &"
|
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}"
|
su -s /bin/sh - ${SOLRUSER} -c "umask 007; cd ${RUNDIR}; ${COMMAND}"
|
||||||
|
if [ $? -eq 0 ]; then
|
||||||
|
echo "done."
|
||||||
|
else
|
||||||
|
echo "failed."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
stop_solr() {
|
do_stop() {
|
||||||
echo -n "Stopping Solr: "
|
echo -n "Stopping Solr... "
|
||||||
pkill -u ${SOLRUSER} -f start.jar
|
pkill -u ${SOLRUSER} -f start.jar
|
||||||
RETVAL=$?
|
if [ $? -ne 0 ]; then
|
||||||
if [ $RETVAL -eq 0 ]; then
|
echo "not running."
|
||||||
echo "Success"
|
|
||||||
else
|
else
|
||||||
echo "Failed"
|
for seq in 1 2 3 4 5 6 7 8 9 10; do
|
||||||
|
do_status
|
||||||
|
if [ $? -ne 0 ]; then
|
||||||
|
success=1
|
||||||
|
break
|
||||||
|
fi
|
||||||
|
sleep 1
|
||||||
|
done
|
||||||
|
if [ -n "${success}" ]; then
|
||||||
|
echo "done."
|
||||||
|
else
|
||||||
|
echo "failed."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
case "$1" in
|
case "$1" in
|
||||||
start)
|
start)
|
||||||
start_solr
|
do_start
|
||||||
;;
|
;;
|
||||||
|
|
||||||
stop)
|
stop)
|
||||||
stop_solr
|
do_stop
|
||||||
;;
|
;;
|
||||||
|
|
||||||
restart)
|
restart)
|
||||||
stop_solr
|
do_stop
|
||||||
sleep 2
|
do_start
|
||||||
start_solr
|
|
||||||
;;
|
;;
|
||||||
|
|
||||||
status)
|
status)
|
||||||
pgrep -u ${SOLRUSER} -f start.jar >/dev/null
|
do_status
|
||||||
exit $?
|
exit $?
|
||||||
;;
|
;;
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue