diff options
| author | Viacheslav Hletenko <v.gletenko@vyos.io> | 2026-02-23 14:37:48 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2026-02-23 14:37:48 +0200 |
| commit | 662b45c159393aa9451c93b168da415021949857 (patch) | |
| tree | 23fc7e5dbcaf84c237c9c7c5c0707d76e77742a8 /src | |
| parent | 61ba7ee632fd2ee8fe58b636087e539da89c6e65 (diff) | |
| parent | d73eda6c858af3d266fb1755d566864ad977e7ab (diff) | |
| download | vyos-1x-662b45c159393aa9451c93b168da415021949857.tar.gz vyos-1x-662b45c159393aa9451c93b168da415021949857.zip | |
Merge pull request #5005 from c-po/igmp-proxy
igmp-proxy: T8295: render appropriate systemd unit file
Diffstat (limited to 'src')
| -rwxr-xr-x | src/conf_mode/protocols_igmp-proxy.py | 17 | ||||
| -rw-r--r-- | src/systemd/igmpproxy.service | 10 |
2 files changed, 19 insertions, 8 deletions
diff --git a/src/conf_mode/protocols_igmp-proxy.py b/src/conf_mode/protocols_igmp-proxy.py index c2d2fea5b..7f53882b0 100755 --- a/src/conf_mode/protocols_igmp-proxy.py +++ b/src/conf_mode/protocols_igmp-proxy.py @@ -21,6 +21,7 @@ from sys import exit from vyos.base import Warning from vyos.config import Config from vyos.configverify import verify_interface_exists +from vyos.defaults import config_files from vyos.template import render from vyos.utils.process import call from vyos.utils.dict import dict_search @@ -28,7 +29,7 @@ from vyos import ConfigError from vyos import airbag airbag.enable() -config_file = r'/etc/igmpproxy.conf' +config_file = config_files['igmp_proxy'] def get_config(config=None): if config: @@ -87,18 +88,18 @@ def generate(igmp_proxy): return None render(config_file, 'igmp-proxy/igmpproxy.conf.j2', igmp_proxy) - return None def apply(igmp_proxy): + service_name = 'igmpproxy.service' if not igmp_proxy or 'disable' in igmp_proxy: - # IGMP Proxy support is removed in the commit - call('systemctl stop igmpproxy.service') - if os.path.exists(config_file): - os.unlink(config_file) - else: - call('systemctl restart igmpproxy.service') + # IGMP Proxy support is removed in the commit + call(f'systemctl stop {service_name}') + if os.path.exists(config_file): + os.unlink(config_file) + return None + call(f'systemctl restart {service_name}') return None if __name__ == '__main__': diff --git a/src/systemd/igmpproxy.service b/src/systemd/igmpproxy.service new file mode 100644 index 000000000..55ab14beb --- /dev/null +++ b/src/systemd/igmpproxy.service @@ -0,0 +1,10 @@ +[Unit] +Description=IGMP multicast proxy +After=vyos-router.service +ConditionPathExists=/run/igmpproxy/igmpproxy.conf + +[Service] +Type=simple +Restart=on-failure +RestartSec=10 +ExecStart=/usr/sbin/igmpproxy -n /run/igmpproxy/igmpproxy.conf |
