diff options
author | Thomas Mangin <thomas.mangin@exa.net.uk> | 2020-04-05 16:38:59 +0100 |
---|---|---|
committer | Thomas Mangin <thomas.mangin@exa.net.uk> | 2020-04-06 20:22:35 +0100 |
commit | eaa28ee365310d17833602462b88a239a6924e57 (patch) | |
tree | 340c8df3fcab39bd9638f14f22fc5467366db701 | |
parent | a4b86a8e8d4b7c156e266b988e8ee0c596f14c1a (diff) | |
download | vyos-1x-eaa28ee365310d17833602462b88a239a6924e57.tar.gz vyos-1x-eaa28ee365310d17833602462b88a239a6924e57.zip |
util: T2226: rewrite system host-name to use cmd
Previously any failure to set the hostname would have been
ignored. Part of the convertion, if the change fail, the commit
will fail too.
-rwxr-xr-x | src/conf_mode/host_name.py | 19 |
1 files changed, 10 insertions, 9 deletions
diff --git a/src/conf_mode/host_name.py b/src/conf_mode/host_name.py index 47cf232e9..690d1e030 100755 --- a/src/conf_mode/host_name.py +++ b/src/conf_mode/host_name.py @@ -25,7 +25,6 @@ import re import sys import copy import glob -import subprocess import argparse import jinja2 @@ -34,6 +33,7 @@ import vyos.hostsd_client from vyos.config import Config from vyos import ConfigError +from vyos.util import cmd, run default_config_data = { @@ -156,21 +156,22 @@ def apply(config): # rsyslog runs into a race condition at boot time with systemd # restart rsyslog only if the hostname changed. - hostname_old = subprocess.check_output(['hostnamectl', '--static']).decode().strip() - - os.system("hostnamectl set-hostname --static {0}".format(hostname_new)) + hostname_old = cmd('hostnamectl --static') + cmd(f'hostnamectl set-hostname --static {hostname_new}') # Restart services that use the hostname if hostname_new != hostname_old: - os.system("systemctl restart rsyslog.service") + run("systemctl restart rsyslog.service") # If SNMP is running, restart it too - if os.system("pgrep snmpd > /dev/null") == 0: - os.system("systemctl restart snmpd.service") + ret = run("pgrep snmpd > /dev/null") + if ret == 0: + run("systemctl restart snmpd.service") # restart pdns if it is used - if os.system("/usr/bin/rec_control ping >/dev/null 2>&1") == 0: - os.system("/etc/init.d/pdns-recursor restart >/dev/null") + ret = run('/usr/bin/rec_control ping >/dev/null 2>&1') + if ret == 0: + run('/etc/init.d/pdns-recursor restart >/dev/null') return None |