summaryrefslogtreecommitdiff
path: root/sys-cluster/keepalived/files/keepalived.init
diff options
context:
space:
mode:
Diffstat (limited to 'sys-cluster/keepalived/files/keepalived.init')
-rw-r--r--sys-cluster/keepalived/files/keepalived.init33
1 files changed, 33 insertions, 0 deletions
diff --git a/sys-cluster/keepalived/files/keepalived.init b/sys-cluster/keepalived/files/keepalived.init
new file mode 100644
index 000000000000..c290c9dbc518
--- /dev/null
+++ b/sys-cluster/keepalived/files/keepalived.init
@@ -0,0 +1,33 @@
+#!/sbin/openrc-run
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+depend() {
+ use logger
+ # The interfaces do not actually need to exist to start, it handles them gracefully.
+ use net
+}
+
+command="/usr/sbin/keepalived"
+command_args="${KEEPALIVED_OPTS}"
+pidfile="/var/run/keepalived.pid"
+
+extra_commands="checkconfig reload"
+
+checkconfig() {
+ # keepalived has a config check command, but it does not work while the daemon is running!
+ if [ ! -e /etc/keepalived/keepalived.conf ] ; then
+ eerror "You need an /etc/keepalived/keepalived.conf file to run keepalived"
+ return 1
+ fi
+}
+
+start_pre() {
+ checkconfig || return 1
+}
+
+reload() {
+ ebegin "Reloading keepalived.conf"
+ start-stop-daemon --pidfile $pidfile --signal HUP
+ eend $?
+}