diff options
author | mergify[bot] <37929162+mergify[bot]@users.noreply.github.com> | 2024-08-23 09:11:38 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-08-23 09:11:38 +0300 |
commit | 92c261ecfe9aef9edddc8f92d3db8fa0ce4c2065 (patch) | |
tree | 78d01fde80bd0e450a12f5e809a86f10fd0e6dd3 | |
parent | de2bdd189ef321a4c0459e98ff20694df6d9eb78 (diff) | |
download | vyos-1x-92c261ecfe9aef9edddc8f92d3db8fa0ce4c2065.tar.gz vyos-1x-92c261ecfe9aef9edddc8f92d3db8fa0ce4c2065.zip |
T6561: Add vrf aware for show ntp (#4009)
(cherry picked from commit 5f780ebb7f1799eb9a93218bb83561db509c7e56)
Co-authored-by: Viacheslav Hletenko <v.gletenko@vyos.io>
-rw-r--r-- | op-mode-definitions/ntp.xml.in | 8 | ||||
-rw-r--r-- | src/op_mode/ntp.py | 45 |
2 files changed, 33 insertions, 20 deletions
diff --git a/op-mode-definitions/ntp.xml.in b/op-mode-definitions/ntp.xml.in index 17250a45e..565a5edb5 100644 --- a/op-mode-definitions/ntp.xml.in +++ b/op-mode-definitions/ntp.xml.in @@ -6,25 +6,25 @@ <properties> <help>Show peer status of NTP daemon</help> </properties> - <command>${vyos_op_scripts_dir}/ntp.py show_sourcestats</command> + <command>sudo ${vyos_op_scripts_dir}/ntp.py show_sourcestats</command> <children> <node name="activity"> <properties> <help>Report the number of servers and peers that are online and offline</help> </properties> - <command>${vyos_op_scripts_dir}/ntp.py show_activity</command> + <command>sudo ${vyos_op_scripts_dir}/ntp.py show_activity</command> </node> <node name="sources"> <properties> <help>Show information about the current time sources being accessed</help> </properties> - <command>${vyos_op_scripts_dir}/ntp.py show_sources</command> + <command>sudo ${vyos_op_scripts_dir}/ntp.py show_sources</command> </node> <node name="system"> <properties> <help>Show parameters about the system clock performance</help> </properties> - <command>${vyos_op_scripts_dir}/ntp.py show_tracking</command> + <command>sudo ${vyos_op_scripts_dir}/ntp.py show_tracking</command> </node> </children> </node> diff --git a/src/op_mode/ntp.py b/src/op_mode/ntp.py index e14cc46d0..6ec0fedcb 100644 --- a/src/op_mode/ntp.py +++ b/src/op_mode/ntp.py @@ -110,49 +110,62 @@ def _is_configured(): if not config.exists("service ntp"): raise vyos.opmode.UnconfiguredSubsystem("NTP service is not enabled.") +def _extend_command_vrf(): + config = ConfigTreeQuery() + if config.exists('service ntp vrf'): + vrf = config.value('service ntp vrf') + return f'ip vrf exec {vrf} ' + return '' + + def show_activity(raw: bool): _is_configured() command = f'chronyc' if raw: - command += f" -c activity" - return _get_raw_data(command) + command += f" -c activity" + return _get_raw_data(command) else: - command += f" activity" - return cmd(command) + command = _extend_command_vrf() + command + command += f" activity" + return cmd(command) def show_sources(raw: bool): _is_configured() command = f'chronyc' if raw: - command += f" -c sources" - return _get_raw_data(command) + command += f" -c sources" + return _get_raw_data(command) else: - command += f" sources -v" - return cmd(command) + command = _extend_command_vrf() + command + command += f" sources -v" + return cmd(command) def show_tracking(raw: bool): _is_configured() command = f'chronyc' if raw: - command += f" -c tracking" - return _get_raw_data(command) + command += f" -c tracking" + return _get_raw_data(command) else: - command += f" tracking" - return cmd(command) + command = _extend_command_vrf() + command + command += f" tracking" + return cmd(command) def show_sourcestats(raw: bool): _is_configured() command = f'chronyc' if raw: - command += f" -c sourcestats" - return _get_raw_data(command) + command += f" -c sourcestats" + return _get_raw_data(command) else: - command += f" sourcestats -v" - return cmd(command) + command = _extend_command_vrf() + command + command += f" sourcestats -v" + return cmd(command) + if __name__ == '__main__': try: |