#!/bin/sh
#
# sccl_cluster Starten oder stoppen des Script-Clusters
#
# Aufruf:
#
# sccl_cluster start|stop
#
####################################################################
#

# Infos fuer RedHat:
# chkconfig: 35 95 05
# description: Start the Script-Cluster

# Infos fuer SUSE
### BEGIN INIT INFO
# Provides:       sccl
# Required-Start: $network $named $remote_fs $syslog unix2web
# Should-Start: nfsserver
# Required-Stop:  $local_fs $network $named $remote_fs $syslog
# Should-Stop: nfsserver
# Default-Start:  3 5
# Default-Stop:
# Description:    Start the Script-Cluster
### END INIT INFO
#
#

if [ -d /var/lock/subsys ]
 then
  lockfile=/var/lock/subsys/sccl_cluster
else
  lockfile=''
fi

if [ -f /etc/sccl/sccl.conf ]
 then
  . /etc/sccl/sccl.conf

  case $1 in
    start)
	MINUPTIME=`awk '{printf("%d", 1+$1/60)}' /proc/uptime`
        if [ $MINUPTIME -lt 60 ]
	 then
	  find "$LOCKDIR" -mmin +$MINUPTIME -name '*_lock' -delete
	fi
        if [ -f "$LOCKDIR"/node.DISABLED ]
         then
          echo "Die Clusterdienste sollen nicht gestartet werden."
        elif grep -q '^init ' /proc/1/cmdline
         then
	  (sleep 30; /usr/share/sccl/bin/sccl_start_node -r)&
        else
	  sleep 30
          /usr/share/sccl/bin/sccl_start_node -r
        fi
        [ -z "$lockfile" ] || touch "$lockfile"
        exit 0
        ;;
    stop)
	/usr/share/sccl/bin/sccl_stop_node --clear -r
	rm -f "$LOCKDIR"/*_lock
        [ -f "$lockfile" ] && rm -f "$lockfile"
        exit 0
        ;;
    reload)
        /usr/share/sccl/bin/sccl_update_ips
        ;;
    *)
	echo $0 '{start|stop|reload}'
        ;;
  esac
else
  echo "Das Cluster ist nicht konfiguriert."
fi
# 
