From a676c91105e3df96bc0e709b397f2ac6ceb2070f Mon Sep 17 00:00:00 2001 From: John Estabrook Date: Wed, 11 Dec 2019 09:44:22 -0600 Subject: vyos.config: T1846: ignore edit level when obtaining running config In addition to ignoring edit level for the session config (12a21a4b), the running config should be parsed from the top level. --- python/vyos/config.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'python') diff --git a/python/vyos/config.py b/python/vyos/config.py index 441944338..27422786e 100644 --- a/python/vyos/config.py +++ b/python/vyos/config.py @@ -99,7 +99,7 @@ class Config(object): # Running config can be obtained either from op or conf mode, it always succeeds # (if config system is initialized at all). if os.path.isfile('/tmp/vyos-config-status'): - running_config_text = self._run([self._cli_shell_api, '--show-active-only', '--show-show-defaults', 'showConfig']) + running_config_text = self._run([self._cli_shell_api, '--show-active-only', '--show-show-defaults', '--show-ignore-edit', 'showConfig']) else: with open('/opt/vyatta/etc/config/config.boot') as f: running_config_text = f.read() -- cgit v1.2.3 From e23bd0aa33d44cb65fe7951404b385546fab92a5 Mon Sep 17 00:00:00 2001 From: Christian Poessinger Date: Thu, 12 Dec 2019 19:51:36 +0100 Subject: ethernet: T1637: do not delete VIFs on every commit A delta-check problem caused the deletion of each and every VLAN interface when anything under an interface has been changed. This also cause PPPoE session interruptions. --- python/vyos/configdict.py | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) (limited to 'python') diff --git a/python/vyos/configdict.py b/python/vyos/configdict.py index e8e52b33d..7f5ae3db9 100644 --- a/python/vyos/configdict.py +++ b/python/vyos/configdict.py @@ -179,16 +179,18 @@ def vlan_to_dict(conf): vlan['egress_qos'] = conf.return_value('egress-qos') # egress changes QoS require VLAN interface recreation - if vlan['egress_qos'] != conf.return_effective_value('egress-qos'): - vlan['egress_qos_changed'] = True + if conf.return_effective_value('egress-qos'): + if vlan['egress_qos'] != conf.return_effective_value('egress-qos'): + vlan['egress_qos_changed'] = True # VLAN ingress QoS if conf.exists('ingress-qos'): vlan['ingress_qos'] = conf.return_value('ingress-qos') # ingress changes QoS require VLAN interface recreation - if vlan['ingress_qos'] != conf.return_effective_value('ingress-qos'): - vlan['ingress_qos_changed'] = True + if conf.return_effective_value('ingress-qos'): + if vlan['ingress_qos'] != conf.return_effective_value('ingress-qos'): + vlan['ingress_qos_changed'] = True # ethertype is mandatory on vif-s nodes and only exists here! # check if this is a vif-s node at all: -- cgit v1.2.3