Code

Fixed typo
[gosa.git] / gosa-si / debian / gosa-si-common.init
index 37c30d53497c297ed60e8d95f3d88a70784074b3..68c59fc65e6a6fbaa190453c9a19f94bb25bb8b3 100755 (executable)
@@ -3,22 +3,27 @@
 #
 ### BEGIN INIT INFO
 # Provides:          gosa-si
-# Required-Start:    $syslog $time
-# Required-Stop:     $syslog $time
+# Required-Start:    $network $named $syslog $time
+# Required-Stop:     $network $named $syslog $time
 # Default-Start:     2 3 4 5
 # Default-Stop:      0 1 6
-# Short-Description: GOsa message bus and server component
+# Short-Description: GOsa message server/client component
 # Description:       gosa-si establishes the communication between a couple of
 #                    GOsa hosting servers and optionally clients to do event
 #                    signaling for all communication partners.
 ### END INIT INFO
 
-# Sanity checks
-test -f /usr/sbin/gosa-si-server || exit 0
-test -f /usr/sbin/gosa-si-bus || exit 0
+# Start/stop the ctftpd daemon.
+SERVER="gosa-si-server"
+CLIENT="gosa-si-client"
+DAEMON_SERVER="/usr/sbin/${SERVER}"
+DAEMON_CLIENT="/usr/sbin/${CLIENT}"
+PIDFILE_SERVER="/var/run/${SERVER}.pid"
+PIDFILE_CLIENT="/var/run/${CLIENT}.pid"
+
+PATH="/sbin:/usr/sbin:/bin:/usr/bin"
 
 # Load defaults
-START_BUS=0
 [ -r /etc/default/gosa-si ] && . /etc/default/gosa-si
 
 # Load LSB support functions
@@ -26,94 +31,103 @@ START_BUS=0
 
 
 start_client() {
-       start-stop-daemon --start --quiet --pidfile /var/run/gosa-si-client.pid --name gosa-si-client --startas /usr/sbin/gosa-si-client
-}
-
-
-start_bus() {
-       start-stop-daemon --start --quiet --pidfile /var/run/gosa-si-bus.pid --name gosa-si-bus --startas /usr/sbin/gosa-si-bus
+       start-stop-daemon --start --quiet --pidfile ${PIDFILE_CLIENT} --name ${CLIENT} --startas ${DAEMON_CLIENT} -- $DEBUG
 }
 
 
 start_server() {
-       start-stop-daemon --start --quiet --pidfile /var/run/gosa-si-server.pid --name gosa-si-server --startas /usr/sbin/gosa-si-server -- $1
+       start-stop-daemon --start --quiet --pidfile ${PIDFILE_SERVER} --name ${SERVER} --startas ${DAEMON_SERVER} -- $1 $DEBUG
 }
 
 
 stop_client() {
-       start-stop-daemon --stop --retry 5 --quiet --pidfile /var/run/gosa-si-client.pid --name gosa-si-client
-}
-
-
-stop_bus() {
-       start-stop-daemon --stop --retry 5 --quiet --pidfile /var/run/gosa-si-bus.pid --name gosa-si-bus
+       start-stop-daemon --stop --retry 5 --quiet --pidfile ${PIDFILE_CLIENT} --name ${CLIENT}
+       kill `ps -C gosa-si-client -o pid=` > /dev/null 2>&1
+       ! ps -C gosa-si-client -o pid= > /dev/null 2>&1
 }
 
 
 stop_server() {
-       start-stop-daemon --stop --retry 5 --quiet --pidfile /var/run/gosa-si-server.pid --name gosa-si-server
+       start-stop-daemon --stop --retry 5 --quiet --pidfile ${PIDFILE_SERVER} --name ${SERVER}
+       kill `ps -C gosa-si-server -o pid=` > /dev/null 2>&1
+       ! ps -C gosa-si-server -o pid= > /dev/null 2>&1
 }
 
 
 case "$1" in
 start)  log_daemon_msg "Starting GOsa support infrastructure"
-       if [ -x /usr/sbin/gosa-si-server ]; then
-               if [ "$START_BUS" == "1" ]; then
-                       log_progress_msg "bus"
-                       start_bus
-                       log_progress_msg "daemon"
-                       start_server
-               else
-                       log_progress_msg "daemon"
-                       start_server --no-bus
-               fi
+       if [ -x ${DAEMON_SERVER} ]; then
+               log_progress_msg "daemon"
+               start_server
        fi
-       if [ "$START_CLIENT" == "1" -a -x /usr/sbin/gosa-si-client ]; then
+       if [ "$START_CLIENT" = "1" -a -x ${DAEMON_CLIENT} ]; then
                log_progress_msg "client"
                start_client
        fi
         log_end_msg $?
        ;;
 stop)   log_daemon_msg "Stopping GOsa support infrastructure"
-       if [ "$START_CLIENT" == "1" -a -x /usr/sbin/gosa-si-client ]; then
+       if [ "$START_CLIENT" = "1" -a -x ${DAEMON_CLIENT} ]; then
                log_progress_msg "client"
                stop_client
        fi
-       if [ -x /usr/sbin/gosa-si-server ]; then
-               if [ "$START_BUS" == "1" ]; then
-                       log_progress_msg "daemon"
-                       stop_server
-                       log_progress_msg "bus"
-                       stop_bus
-               else
-                       log_progress_msg "daemon"
-                       stop_server
-               fi
+       if [ -x ${DAEMON_SERVER} ]; then
+               log_progress_msg "daemon"
+               stop_server
        fi
         log_end_msg $?
         ;;
 reload|force-reload|restart) log_daemon_msg "Restarting GOsa support infrastructure" 
-       if [ "$START_CLIENT" == "1" -a -x /usr/sbin/gosa-si-client ]; then
+       if [ "$START_CLIENT" = "1" -a -x ${DAEMON_CLIENT} ]; then
                stop_client
        fi
-       if [ -x /usr/sbin/gosa-si-server ]; then
-               if [ "$START_BUS" == "1" ]; then
-                       stop_server
-                       stop_bus
-                       start_bus
-                       start_server --no-bus
-               else
-                       stop_server
-                       start_server --no-bus
-               fi
+       if [ -x ${DAEMON_SERVER} ]; then
+               stop_server
+               start_server
        fi
-       if [ "$START_CLIENT" == "1" -a -x /usr/sbin/gosa-si-client ]; then
+       if [ "$START_CLIENT" = "1" -a -x ${DAEMON_CLIENT} ]; then
                start_client
        fi
        log_progress_msg "done"
         log_end_msg $?
         ;;
-*)     log_action_msg "Usage: /etc/init.d/gosa-si {start|stop|restart|reload|force-reload}"
+restart-client) log_daemon_msg "Restarting GOsa support infrastructure client"
+        if [ "$START_CLIENT" = "1" -a -x ${DAEMON_CLIENT} ]; then
+                stop_client
+        fi
+        if [ "$START_CLIENT" = "1" -a -x ${DAEMON_CLIENT} ]; then
+                start_client
+        fi
+        log_progress_msg "done"
+        log_end_msg $?
+        ;;
+status)
+        status=0
+        pidofproc -p "${PIDFILE_SERVER}" "${DAEMON_SERVER}" >/dev/null || status="$?"
+        log_daemon_msg "Status of GOsa-si server" "${NAME}"
+        if [ "$status" = 0 ]; then
+               log_progress_msg "is running"
+               log_end_msg 0
+        else
+               log_progress_msg "is not running"
+               log_end_msg $status
+        fi
+
+        if [ "$START_CLIENT" = "1" -a -x ${DAEMON_CLIENT} ]; then
+               status=0
+               pidofproc -p "${PIDFILE_CLIENT}" "${DAEMON_CLIENT}" >/dev/null || status="$?"
+               log_daemon_msg "Status of GOsa-si client" "${NAME}"
+               if [ "$status" = 0 ]; then
+                               log_progress_msg "is running"
+                               log_end_msg 0
+               else
+                               log_progress_msg "is not running"
+                               log_end_msg $status
+               fi
+       fi
+        ;;
+
+*)     log_action_msg "Usage: /etc/init.d/gosa-si {start|stop|restart|restart-client|reload|force-reload|status}"
         exit 2
         ;;
 esac