| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859 |
- # corosync - Corosync Cluster Engine
- #
- # Starts corosync
- expect fork
- env prog=corosync
- env rpm_sysconf=@SYSCONFDIR@/sysconfig/corosync
- env rpm_lockfile=@LOCALSTATEDIR@/lock/subsys/corosync
- env deb_sysconf=@SYSCONFDIR@/default/corosync
- env deb_lockfile=@LOCALSTATEDIR@/lock/corosync
- script
- [ -f "$rpm_sysconf" ] && . $rpm_sysconf
- [ -f "$deb_sysconf" ] && . $deb_sysconf
- exec $prog $COROSYNC_OPTIONS
- end script
- pre-start script
- mkdir -p @LOCALSTATEDIR@/run
- # rewrite according to environment.
- #[ -c /dev/watchdog ] || modprobe softdog
- end script
- post-start script
- wait_for_ipc()
- {
- [ -f "$rpm_sysconf" ] && . $rpm_sysconf
- [ -f "$deb_sysconf" ] && . $deb_sysconf
- try=0
- max_try=$((COROSYNC_INIT_TIMEOUT*2-1))
- [ "$max_try" -le "0" ] && max_try=120
- while [ "$try" -le "$max_try" ]; do
- if corosync-cfgtool -s > /dev/null 2>&1; then
- return 0
- fi
- sleep 0.5
- try=$((try + 1))
- done
- logger -i -t "$UPSTART_JOB" "ERROR: Any interfaces are faulty!"
- return 1
- }
- wait_for_ipc || { stop; exit 1; }
- [ -f "$rpm_sysconf" ] && . $rpm_sysconf
- [ -f "$deb_sysconf" ] && . $deb_sysconf
- [ -z "$LOCK_FILE" -a -d @SYSCONFDIR@/sysconfig ] && LOCK_FILE="$rpm_lockfile"
- [ -z "$LOCK_FILE" -a -d @SYSCONFDIR@/default ] && LOCK_FILE="$deb_lockfile"
- touch $LOCK_FILE
- end script
- post-stop script
- [ -f "$rpm_sysconf" ] && . $rpm_sysconf
- [ -f "$deb_sysconf" ] && . $deb_sysconf
- [ -z "$LOCK_FILE" -a -d @SYSCONFDIR@/sysconfig ] && LOCK_FILE="$rpm_lockfile"
- [ -z "$LOCK_FILE" -a -d @SYSCONFDIR@/default ] && LOCK_FILE="$deb_lockfile"
- rm -f $LOCK_FILE
- end script
|