]> git.pld-linux.org Git - packages/dgee.git/blobdiff - dgee.init
- converted to UTF-8
[packages/dgee.git] / dgee.init
index 4e1a6b81deb29f844ed970d152d15504ad2ef70d..d705d54264b8cff96e78ce16509bd349986a6b5d 100644 (file)
--- a/dgee.init
+++ b/dgee.init
@@ -2,33 +2,59 @@
 #
 # dgee dgee short service description
 #
-# chkconfig:   345 <startr_level> <stop_level>
+#Start right before apache:
+# chkconfig:   345 84 16
 #
 # description: dgee long service description
 #
 # $Id$
 
-
 # Source function library
 . /etc/rc.d/init.d/functions
 
 # Get network config
 . /etc/sysconfig/network
 
-
 # Set defaults
 GWCONFIG=/etc/dgeeconf.bin
 SRC_CONFIG=/etc/dgeeconf.xml
 
 # Get service config - may override defaults
 [ -f /etc/sysconfig/dgee ] && . /etc/sysconfig/dgee
+export GWCONFIG
+
+goldwater_start () {
+       stat=`goldwater --prompt='dotGNU DGEE' start | grep -e"Goldwater Started."`
+       if [ "$stat" = "Goldwater Started." ]; then
+               return 0
+       fi
+       return 1
+}
 
+goldwater_stop () {
+       goldwater --prompt='dotGNU DGEE' stop | \
+               grep -e "++ Halting" | \
+               awk 'BEGIN{err=0}/$12~"Halted"/{next}{err++}END{exit err}'
+       if [ $? = "0" ]; then
+               return 0;
+       fi
+       return 1;
+}
+
+goldwater_boot () {
+       goldwater --prompt='dotGNU DGEE' boot | \
+               grep -e "++ Booting" | \
+               awk 'BEGIN{err=0}/$12~"Booted"/{next}{err++}END{exit err}'
 
+       if [ $? = "0" ]; then
+               return 0
+       fi
+       return 1
+}
 
 # Check that networking is up.
 if is_yes "${NETWORKING}"; then
-       if [ ! -f /var/lock/subsys/network ]; then
-               # nls "ERROR: Networking is down. %s can't be run." dgee
+       if [ ! -f /var/lock/subsys/network -a "$1" != stop -a "$1" != status ]; then
                msg_network_down dgee
                exit 1
        fi
@@ -36,102 +62,85 @@ else
        exit 0
 fi
 
-
+RETVAL=0
 # See how we were called.
 case "$1" in
   start)
        # Check if the service is already running?
        if [ ! -f /var/lock/subsys/dgee ]; then
-               # show "Starting %s service" dgee
                msg_starting dgee
                busy
-               goldwater --prompt='dotGNU DGEE' start
-               if [ $?="0" ]; then
-                   log_succes "dgee startup"
-                   goldwater --prompt='dotGNU DGEE' boot
-                   if [ $?="0" ]; then
-                           log_success "dgeews startup"
-                           ok
-                           touch /var/lock/subsys/dgee
-                           exit 0
-                   else
-                       log_fail "dgeews startup"
-                       goldwater --prompt='dotGNU DGEE' stop
-                       if [ $?!="0" ]; then
-                           log_fail "dgee shutdown"
+               goldwater_start
+               if [ $? = "0" ]; then
+                       log_success "dgee startup"
+                       goldwater_boot
+                       if [ $? = "0" ]; then
+                               log_success "dgeews startup"
+                               ok
+                               touch /var/lock/subsys/dgee
+                       else
+                               log_failed "dgeews startup"
+                               goldwater_stop
+                               if [ $? != "0" ]; then
+                                       log_failed "dgee shutdown"
+                               fi
+                               fail
+                               exit 1
                        fi
+               else
                        fail
+                       log_failed "dgee startup"
                        exit 1
-                   fi
-               else
-                   fail
-                   log_fail "dgee startup"
-                   exit 1
                fi
        else
-               # show "%s service is already running." dgee
                msg_already_running dgee
        fi
        ;;
   stop)
        if [ -f /var/lock/subsys/dgee ]; then
                # Stop daemons.
-               # show "Stopping %s service" dgee
-               msg_stopping dgee (and web services)
+               msg_stopping dgee
                busy
-               goldwater --prompt='dotGNU DGEE' stop
-               if [ $?="0" ]; then
-                   log_succes "dgee shutdown"
-                   ok
-                   rm -f /var/lock/subsys/dgee
-                   exit 0
+               goldwater_stop
+               if [ $? = "0" ]; then
+                       log_success "dgee shutdown"
+                       ok
+                       rm -f /var/lock/subsys/dgee
                else
-                   log_fail "dgee shutdown"
-                   fail
-                   rm -f /var/lock/subsys/dgee
-                   exit 1
-               fi      
+                       log_failed "dgee shutdown"
+                       fail
+                       rm -f /var/lock/subsys/dgee
+               fi
        else
-               # show "%s service is not running." dgee
                msg_not_running dgee
        fi
        ;;
-  restart)
+  restart|force-reload)
        $0 stop
        $0 start
        exit $?
        ;;
-  reload-ws)
+  reload)
        if [ -f /var/lock/subsys/dgee ]; then
-               # show "Reload %s service" dgee
-               msg_reloading dgee\'s web services
                goldwater --prompt='dotGNU DGEE' cycle
                RETVAL=$?
        else
-               # show "%s service is not running." dgee
                msg_not_running dgee >&2
                RETVAL=7
        fi
        ;;
-  force-reload)
-       # or if it doesn't
-       $0 restart
-
-       exit $?
-       ;;
   status)
        status dgee
        RETVAL=$?
        ;;
   compilecfg)
        if [ -n $2 ]; then
-           SRC_CONFIG=$2
+               SRC_CONFIG=$2
        fi
        /usr/bin/gwmkcfg $SRC_CONFIG
        RETVAL=$?
        ;;
   *)
-       # show "Usage: %s {start|stop|restart|reload|force-reload|status}"
        msg_usage "$0 \
                {start|stop|restart|reload-ws|force-reload|status|compilecfg}"
        exit 3
This page took 0.284921 seconds and 4 git commands to generate.