[mapguide-commits] r8970 - in branches/3.1/MgDev: . Server/src/Core
svn_mapguide at osgeo.org
svn_mapguide at osgeo.org
Wed May 25 08:07:47 PDT 2016
Author: jng
Date: 2016-05-25 08:07:47 -0700 (Wed, 25 May 2016)
New Revision: 8970
Modified:
branches/3.1/MgDev/
branches/3.1/MgDev/Server/src/Core/mapguidectl
Log:
Merged revision(s) 8969 from trunk/MgDev:
#2527: Improve mgserver service control script:
- define log_end_msg if not defined in lsb functions (as in CentOS 6)
- define status and restart actions
- exit with failures if something goes wrong
- warn user if trying to start MapGuide and it is already running
- warn user if trying to stop MapGuide and it is not running
- No bash-isms, allowing it to work in base un-configured Ubuntu (whose default shell is dash, not bash)
Patch by Gabriele Monfardini, tested by me.
........
Property changes on: branches/3.1/MgDev
___________________________________________________________________
Modified: svn:mergeinfo
- /branches/2.4/MgDev:6749-6756,6777-6783,6785-6787,6789,6791-6794,6796-6801,6954-6962,6986-7006
/branches/2.6/MgDev:8276-8286,8288-8292,8297,8299,8301,8303,8314-8315,8318,8335,8340,8354-8355,8365,8373
/branches/3.0/MgDev:8658,8705,8710
/sandbox/VC140:8684-8759
/sandbox/adsk/2.6l:8727
/sandbox/adsk/3.0m:8563,8584,8607,8625,8694-8695
/sandbox/adsk/3.1n:8871,8895,8901,8912-8913,8921-8922,8942
/sandbox/jng/convenience_apis:8262-8268,8271-8363
/sandbox/jng/createruntimemap:7486-7555
/sandbox/jng/dwftk:8321-8324,8328-8329,8331,8352
/sandbox/jng/geos34x:8256-8259
/sandbox/jng/rfc155:8872-8884
/sandbox/jng/tiling:8174-8208
/sandbox/jng/v30:8212-8227
/sandbox/rfc94:5099-5163
/trunk/MgDev:8955-8956
+ /branches/2.4/MgDev:6749-6756,6777-6783,6785-6787,6789,6791-6794,6796-6801,6954-6962,6986-7006
/branches/2.6/MgDev:8276-8286,8288-8292,8297,8299,8301,8303,8314-8315,8318,8335,8340,8354-8355,8365,8373
/branches/3.0/MgDev:8658,8705,8710
/sandbox/VC140:8684-8759
/sandbox/adsk/2.6l:8727
/sandbox/adsk/3.0m:8563,8584,8607,8625,8694-8695
/sandbox/adsk/3.1n:8871,8895,8901,8912-8913,8921-8922,8942
/sandbox/jng/convenience_apis:8262-8268,8271-8363
/sandbox/jng/createruntimemap:7486-7555
/sandbox/jng/dwftk:8321-8324,8328-8329,8331,8352
/sandbox/jng/geos34x:8256-8259
/sandbox/jng/rfc155:8872-8884
/sandbox/jng/tiling:8174-8208
/sandbox/jng/v30:8212-8227
/sandbox/rfc94:5099-5163
/trunk/MgDev:8955-8956,8969
Modified: branches/3.1/MgDev/Server/src/Core/mapguidectl
===================================================================
--- branches/3.1/MgDev/Server/src/Core/mapguidectl 2016-05-25 15:04:48 UTC (rev 8969)
+++ branches/3.1/MgDev/Server/src/Core/mapguidectl 2016-05-25 15:07:47 UTC (rev 8970)
@@ -1,33 +1,81 @@
#!/bin/sh
+# chkconfig: 345 35 65
+# description: MapGuide Server Daemon
+
# MapGuide init script
. /lib/lsb/init-functions
+
+# Defined here for distributions that don't define log_end_msg
+type log_end_msg > /dev/null 2>&1 || log_end_msg () {
+ retval=$1
+ if [ $retval -eq 0 ]; then
+ log_success_msg
+ else
+ log_failure_msg
+ fi
+ return $retval
+}
+progname="mgserver"
+fullprogname="mgserver daemon"
+
+do_start () {
+ echo -n "Starting MapGuide Server..."
+ pid=$(pgrep -f -u root "${fullprogname}")
+ ret=0
+ if [ -z "$pid" ]
+ then
+ cd /usr/local/mapguideopensource/server/bin && ./mgserverd.sh > /dev/null
+ ret=$?
+ else
+ echo
+ echo -n "MapGuide Server already running (pid $pid)"
+ fi
+ log_end_msg $ret
+}
+
+do_stop () {
+ echo -n "Stopping MapGuide Server"
+ pid=$(pgrep -f -u root "${fullprogname}")
+ ret=0
+ if [ -z "$pid" ]
+ then
+ echo
+ echo -n "MapGuide Server not running"
+ else
+ /bin/kill $pid
+ ret=$?
+ fi
+ log_end_msg $ret
+}
+
+
# Must be superuser
-if [[ $EUID -ne 0 ]]; then
- echo "You must have superuser privileges to run this script"
- exit 1
+if [ $(id -u) -ne 0 ]; then
+ log_failure_msg "You must have superuser privileges to run this script"
+ exit 1
fi
-
+
case "$1" in
- start)
- log_daemon_msg "Starting MapGuide Server"
- pushd /usr/local/mapguideopensource/server/bin > /dev/null
- ./mgserverd.sh
- popd > /dev/null
- log_end_msg 0
- ;;
- stop)
- log_daemon_msg "Stopping MapGuide Server"
- MGPROCESS=`/usr/bin/pgrep -f -u root "mgserver daemon"`
- if [ "$MGPROCESS" != "" ]
- then
- /bin/kill $MGPROCESS
- fi
- log_end_msg 0
- ;;
- *)
- echo "Usage: $0 {start|stop}"
- exit 1
- ;;
+ start)
+ do_start
+ ;;
+ stop)
+ do_stop
+ ;;
+ status)
+ pid=$(pgrep -f -u root "${fullprogname}")
+ [ -z "$pid" ] && echo "$progname is stopped" && RETVAL=3 && exit $RETVAL
+ echo "$progname (pid $pid) is running..."
+ ;;
+ restart)
+ do_stop
+ sleep 2
+ do_start
+ ;;
+ *)
+ echo "Usage: $0 {start|stop|status|restart}"
+ exit 1
+ ;;
esac
exit 0
More information about the mapguide-commits
mailing list