summaryrefslogtreecommitdiff
path: root/src/system/keepalived-fifo.py
diff options
context:
space:
mode:
authorChristian Poessinger <christian@poessinger.com>2021-06-20 12:40:58 +0200
committerGitHub <noreply@github.com>2021-06-20 12:40:58 +0200
commitfdb1e8756fd4570233c8d02eaa37f88f3d7f3adc (patch)
treef331d3704ba6962a1bfe38084d074af256b7d8e5 /src/system/keepalived-fifo.py
parent6f11089458a544a5ccee60b0d10eea0612006195 (diff)
parentd372734bfd2ec88df000f9cd943137057a823088 (diff)
downloadvyos-1x-fdb1e8756fd4570233c8d02eaa37f88f3d7f3adc.tar.gz
vyos-1x-fdb1e8756fd4570233c8d02eaa37f88f3d7f3adc.zip
Merge pull request #887 from sarthurdev/mdns_vrrp
mdns: vrrp: T3635: Add ability to use mDNS repeater with VRRP
Diffstat (limited to 'src/system/keepalived-fifo.py')
-rwxr-xr-xsrc/system/keepalived-fifo.py8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/system/keepalived-fifo.py b/src/system/keepalived-fifo.py
index 7e2076820..3b4330e9b 100755
--- a/src/system/keepalived-fifo.py
+++ b/src/system/keepalived-fifo.py
@@ -37,6 +37,8 @@ logs_handler_syslog.setFormatter(logs_format)
logger.addHandler(logs_handler_syslog)
logger.setLevel(logging.DEBUG)
+mdns_running_file = '/run/mdns_vrrp_active'
+mdns_update_command = 'sudo /usr/libexec/vyos/conf_mode/service_mdns-repeater.py'
# class for all operations
class KeepalivedFifo:
@@ -121,6 +123,9 @@ class KeepalivedFifo:
logger.info("{} {} changed state to {}".format(n_type, n_name, n_state))
# check and run commands for VRRP instances
if n_type == 'INSTANCE':
+ if os.path.exists(mdns_running_file):
+ cmd(mdns_update_command)
+
if n_name in self.vrrp_config['vrrp_groups'] and n_state in self.vrrp_config['vrrp_groups'][n_name]:
n_script = self.vrrp_config['vrrp_groups'][n_name].get(n_state)
if n_script:
@@ -128,6 +133,9 @@ class KeepalivedFifo:
# check and run commands for VRRP sync groups
# currently, this is not available in VyOS CLI
if n_type == 'GROUP':
+ if os.path.exists(mdns_running_file):
+ cmd(mdns_update_command)
+
if n_name in self.vrrp_config['sync_groups'] and n_state in self.vrrp_config['sync_groups'][n_name]:
n_script = self.vrrp_config['sync_groups'][n_name].get(n_state)
if n_script: