summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Poessinger <christian@poessinger.com>2018-11-17 13:16:04 +0100
committerChristian Poessinger <christian@poessinger.com>2018-11-17 13:16:04 +0100
commit7a615ab169a7f6141fd9b6e84ac1ea415216d9bb (patch)
treeb339bc7ef15241d793e1d9f5210a8f5d3a7861a8
parent604600bf40873a7d64329d88dafd90196ed10745 (diff)
downloadvyos-1x-7a615ab169a7f6141fd9b6e84ac1ea415216d9bb.tar.gz
vyos-1x-7a615ab169a7f6141fd9b6e84ac1ea415216d9bb.zip
T1018: remove obsoleted 'dynamic' option from NTP
Increase NTP config version from 0 to 1. For more information see [1]. ntpd: Warning: the "dynamic" keyword has been obsoleted and will be removed in the next release [1]: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=553976
-rw-r--r--interface-definitions/ntp.xml6
-rwxr-xr-xsrc/conf_mode/ntp.py2
-rwxr-xr-xsrc/migration-scripts/ntp/0-to-136
3 files changed, 36 insertions, 8 deletions
diff --git a/interface-definitions/ntp.xml b/interface-definitions/ntp.xml
index d324404da..945345898 100644
--- a/interface-definitions/ntp.xml
+++ b/interface-definitions/ntp.xml
@@ -14,12 +14,6 @@
<help>Network Time Protocol (NTP) server</help>
</properties>
<children>
- <leafNode name="dynamic">
- <properties>
- <help>Allow server to be configured even if not reachable</help>
- <valueless/>
- </properties>
- </leafNode>
<leafNode name="noselect">
<properties>
<help>Marks the server as unused</help>
diff --git a/src/conf_mode/ntp.py b/src/conf_mode/ntp.py
index 0abb2746a..68a046939 100755
--- a/src/conf_mode/ntp.py
+++ b/src/conf_mode/ntp.py
@@ -108,8 +108,6 @@ def get_config():
"name": node,
"options": []
}
- if conf.exists('server {0} dynamic'.format(node)):
- options.append('dynamic')
if conf.exists('server {0} noselect'.format(node)):
options.append('noselect')
if conf.exists('server {0} preempt'.format(node)):
diff --git a/src/migration-scripts/ntp/0-to-1 b/src/migration-scripts/ntp/0-to-1
new file mode 100755
index 000000000..9c66f3109
--- /dev/null
+++ b/src/migration-scripts/ntp/0-to-1
@@ -0,0 +1,36 @@
+#!/usr/bin/env python3
+
+# Delete "set system ntp server <n> dynamic" option
+
+import sys
+
+from vyos.configtree import ConfigTree
+
+if (len(sys.argv) < 1):
+ print("Must specify file name!")
+ sys.exit(1)
+
+file_name = sys.argv[1]
+
+with open(file_name, 'r') as f:
+ config_file = f.read()
+
+config = ConfigTree(config_file)
+
+if not config.exists(['system', 'ntp']):
+ # Nothing to do
+ sys.exit(0)
+else:
+ # Delete abandoned leaf node if found inside tag node for
+ # "set system ntp server <n> dynamic"
+ base = ['system', 'ntp', 'server']
+ for server in config.list_nodes(base):
+ if config.exists(base + [server, 'dynamic']):
+ config.delete(base + [server, 'dynamic'])
+
+ try:
+ with open(file_name, 'w') as f:
+ f.write(config.to_string())
+ except OSError as e:
+ print("Failed to save the modified config: {}".format(e))
+ sys.exit(1)