[Erp5-report] r11448 - /erp5/trunk/utils/oood/oood.rc
nobody at svn.erp5.org
nobody at svn.erp5.org
Wed Nov 22 19:01:36 CET 2006
Author: kevin
Date: Wed Nov 22 19:01:34 2006
New Revision: 11448
URL: http://svn.erp5.org?rev=11448&view=rev
Log:
Add necessary code to let the service start, stop and restart
Modified:
erp5/trunk/utils/oood/oood.rc
Modified: erp5/trunk/utils/oood/oood.rc
URL: http://svn.erp5.org/erp5/trunk/utils/oood/oood.rc?rev=11448&r1=11447&r2=11448&view=diff
==============================================================================
--- erp5/trunk/utils/oood/oood.rc (original)
+++ erp5/trunk/utils/oood/oood.rc Wed Nov 22 19:01:34 2006
@@ -7,43 +7,89 @@
# Source function library.
. /etc/rc.d/init.d/functions
-name="oood"
+NAME="oood"
-RETVAL=0
+#LOCKDIR=/var/lock/subsys
+
+HOME=/var/lib/oood
+PIDDIR=/var/run/oood
+LOCKFILE=$PIDDIR/server_pid.lock
+PIDFILE=$LOCKFILE
+
start() {
- echo -n "Starting $name: "
- python /var/lib/oood/start.py
- python /var/lib/oood/runserw.py
-# return 1
+ if [ -f $LOCKFILE ] ; then
+ gprintf "Another instance of %s is running (lockfile exists)." "$NAME"
+ echo_failure
+ echo
+ exit 4
+ fi
+
+ gprintf "Starting %s: " "$NAME"
+ # Initialize the Pool
+ python $HOME/start.py --init > /dev/null 2>&1 /dev/null
+ # Start the server in the background
+ python $HOME/runserw.py > /dev/null &
+ sleep 20
+ PID=`cat $PIDFILE`
+ echo $PID
+ if [ $PID ]; then
+ #touch $LOCKDIR/oood
+ echo_success
+ else
+ gprintf "%s is not running (no pid file found)." "$NAME"
+ killproc "python $HOME/runserw.py"
+ python $HOME/start.py --flush > /dev/null 2>&1 /dev/null
+ echo_failure
+ fi
+ echo
}
-# stop() {
-# echo -n "Stopping $name: "
-# killall oood
-# return 1
-# }
+
+stop() {
+ if [ ! -f $LOCKFILE ] ; then
+ gprintf "%s is not running (no lockfile found)." "$NAME"
+ echo_failure
+ else
+ gprintf "Stopping %s daemon: " "$NAME"
+ killproc "python $HOME/runserw.py" && echo_success || echo_failure
+ fi
+ # Clean up in any case
+ rm -f $LOCKFILE
+ python $HOME/start.py --flush > /dev/null 2>&1 /dev/null
+ echo
+}
+
+
+status() {
+ python $HOME/start.py --status
+}
+
case "$1" in
start)
- start
- ;;
+ touch /var/lock/subsys/$NAME
+ start
+ ;;
-# stop)
-# stop
-# ;;
-#
-# restart)
-# stop
-# start
-# ;;
+ stop)
+ stop
+ rm -f /var/lock/subsys/$NAME
+ ;;
+ restart)
+ stop
+ start
+ ;;
+
+ status)
+ status
+ ;;
*)
-# echo "Usage: $0 {start|stop|restart}"
- echo "Usage: $0 {start}"
- exit 1
+ gprintf "Usage: %s\n" "$0 {start|stop|restart|status}"
+ exit 1
esac
-exit $REVAL
+exit
More information about the Erp5-report
mailing list