summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Zoffoli <xmerlin@gentoo.org>2006-07-13 12:52:23 +0000
committerChristian Zoffoli <xmerlin@gentoo.org>2006-07-13 12:52:23 +0000
commit70a7aeb0a545c6506179b7c25924f9e3410b746e (patch)
tree2d76c217f6670ab20bff66263aaea7d33c4261c1 /sys-cluster/heartbeat/files/heartbeat-init
parentMark 2.6.8-r2 stable on ia64 (diff)
downloadgentoo-2-70a7aeb0a545c6506179b7c25924f9e3410b746e.tar.gz
gentoo-2-70a7aeb0a545c6506179b7c25924f9e3410b746e.tar.bz2
gentoo-2-70a7aeb0a545c6506179b7c25924f9e3410b746e.zip
Added GUI support, fixed bug #131514. Thanks to Neil Katin <gentoo@askneil.com>. Improved init script, fixed bug #133170. Thanks to Petre Rodan <kaiowas@gentoo.org>.
(Portage version: 2.1-r1)
Diffstat (limited to 'sys-cluster/heartbeat/files/heartbeat-init')
-rw-r--r--sys-cluster/heartbeat/files/heartbeat-init68
1 files changed, 56 insertions, 12 deletions
diff --git a/sys-cluster/heartbeat/files/heartbeat-init b/sys-cluster/heartbeat/files/heartbeat-init
index f3befad12794..a3ae6192bb29 100644
--- a/sys-cluster/heartbeat/files/heartbeat-init
+++ b/sys-cluster/heartbeat/files/heartbeat-init
@@ -1,7 +1,7 @@
#!/sbin/runscript
-# Copyright 1999-2004 Gentoo Foundation
+# Copyright 1999-2006 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sys-cluster/heartbeat/files/heartbeat-init,v 1.5 2004/07/15 00:54:33 agriffis Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-cluster/heartbeat/files/heartbeat-init,v 1.6 2006/07/13 12:52:23 xmerlin Exp $
HA_DIR=/etc/ha.d
@@ -10,35 +10,79 @@ depend() {
need net
}
+opts="start stop status reload restart"
+
+CheckBool() {
+ case `echo "$1" | tr A-Z a-z` in
+ y|yes|enable|on|true|1) true;;
+ *) false;;
+ esac
+}
+
# Run pre-startup script if it exists
RunStartStop() {
[ -f $HA_DIR/resource.d/startstop ] && $HA_DIR/resource.d/startstop "$@"
}
start() {
- ebegin "Starting Heartbeat"
+ ebegin "Starting heartbeat"
+
+ . $HA_DIR/shellfuncs
+
+ # start the log subsystem
+ /usr/lib/heartbeat/ha_logd -s &>/dev/null && \
+ /usr/lib/heartbeat/ha_logd -d
RunStartStop pre-start
- /usr/lib/heartbeat/heartbeat 2>&1
+ CheckBool "`ha_parameter crm`" && \
+ /usr/lib/heartbeat/ResourceManager verifyallidle
+
+ /usr/lib/heartbeat/heartbeat &>/dev/null
ret=$?
- /usr/lib/heartbeat/ResourceManager verifyallidle
RunStartStop post-start
- eend $ret
+ eend ${ret}
}
stop() {
- ebegin "Stopping Heartbeat"
- /usr/lib/heartbeat/heartbeat -k &> /dev/null
- eend $?
-}
+ ebegin "Stopping heartbeat"
-restart() {
- /usr/lib/heartbeat/heartbeat -r
+ RunStartStop pre-stop
+
+ /usr/lib/heartbeat/heartbeat -k &>/dev/null
+ ret=$?
+
+ RunStartStop post-stop ${ret}
+
+ # stop log subsystem
+ /usr/lib/heartbeat/ha_logd -s &>/dev/null || \
+ /usr/lib/heartbeat/ha_logd -k &>/dev/null
+
+ eend ${ret}
}
status() {
/usr/lib/heartbeat/heartbeat -s
}
+
+reload() {
+ ebegin "Reloading heartbeat"
+ /usr/lib/heartbeat/heartbeat -r &>/dev/null
+ eend $?
+}
+
+restart() {
+ . $HA_DIR/shellfuncs
+
+ sleeptime=$(( `ha_parameter deadtime` + 10 ))
+
+ svc_stop
+
+ ebegin " waiting ${sleeptime}s to allow resource takeover to complete"
+ sleep ${sleeptime}
+ eend 0
+
+ svc_start
+}