net/keepalived: add keepalived.user script handling 5077/head
authorFlorian Eckert <fe@dev.tdt.de>
Tue, 7 Nov 2017 10:31:18 +0000 (11:31 +0100)
committerFlorian Eckert <fe@dev.tdt.de>
Wed, 8 Nov 2017 10:36:58 +0000 (11:36 +0100)
Add keepalived.user script handling which are also saved during sysupgrade.

Signed-off-by: Florian Eckert <fe@dev.tdt.de>
net/keepalived/Makefile
net/keepalived/files/hotplug-user [new file with mode: 0644]
net/keepalived/files/keepalived.user [new file with mode: 0644]

index ad850511a7a75a74de5433735223e0892809691d..b584a3280fb7c5d563917fad0d1065d5ed95ae8a 100644 (file)
@@ -39,6 +39,7 @@ endef
 define Package/keepalived/conffiles
 /etc/keepalived/keepalived.conf
 /etc/config/keepalived
+/etc/keepalived.user
 endef
 
 CONFIGURE_ARGS+= \
@@ -62,6 +63,10 @@ define Package/keepalived/install
        $(INSTALL_BIN) ./files/keepalived.init $(1)/etc/init.d/keepalived
        $(INSTALL_DIR) $(1)/etc/config
        $(INSTALL_CONF) ./files/keepalived.config $(1)/etc/config/keepalived
+       $(INSTALL_DIR) $(1)/etc
+       $(INSTALL_CONF) ./files/keepalived.user $(1)/etc/keepalived.user
+       $(INSTALL_DIR) $(1)/etc/hotplug.d/keepalived
+       $(INSTALL_DATA) ./files/hotplug-user $(1)/etc/hotplug.d/keepalived/01-user
 endef
 
 $(eval $(call BuildPackage,keepalived))
diff --git a/net/keepalived/files/hotplug-user b/net/keepalived/files/hotplug-user
new file mode 100644 (file)
index 0000000..329a8d5
--- /dev/null
@@ -0,0 +1,7 @@
+#!/bin/sh
+
+[ -f "/etc/keepalived.user" ] && {
+       /bin/sh /etc/keepalived.user "$@"
+}
+
+exit 0
diff --git a/net/keepalived/files/keepalived.user b/net/keepalived/files/keepalived.user
new file mode 100644 (file)
index 0000000..283f53a
--- /dev/null
@@ -0,0 +1,14 @@
+#!/bin/sh
+#
+# This file is interpreted as a shell script.
+# The first line of the script must be "#!/bin/sh" without quotes.
+# Lines beginning with # are comments and are not executed.
+#
+# There are three environment arguments that are passed to this script.
+#
+# $TYPE Set to INSTANCE or GROUP, depending on whether keepalived invoked the program from vrrp_instance or vrrp_sync_group.
+# $NAME Set to the name of the vrrp_instance or vrrp_sync_group.
+# $ACTION Set to the end state of the transition.
+# Valid values are:
+#     $TYPE==INSTANCE: [ NOTIFY_BACKUP | NOTIFY_MASTER | NOTIFY_FAULT | NOTIFY_STOP | NOTIFY ]
+#     $TYPE==GROUP: [ NOTIFY_BACKUP | NOTIFY_MASTER | NOTIFY_FAULT | NOTIFY ]