summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorThomas Mangin <thomas.mangin@exa.net.uk>2020-04-05 16:38:59 +0100
committerThomas Mangin <thomas.mangin@exa.net.uk>2020-04-06 20:22:35 +0100
commiteaa28ee365310d17833602462b88a239a6924e57 (patch)
tree340c8df3fcab39bd9638f14f22fc5467366db701 /src
parenta4b86a8e8d4b7c156e266b988e8ee0c596f14c1a (diff)
downloadvyos-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.
Diffstat (limited to 'src')
-rwxr-xr-xsrc/conf_mode/host_name.py19
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