summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn Estabrook <jestabro@vyos.io>2024-04-18 07:42:26 -0500
committerGitHub <noreply@github.com>2024-04-18 07:42:26 -0500
commitfc3fd89a6fa4a02147348563a7573349b9d9a39f (patch)
tree3a0e2f2394650dbfd27bc89ddbd285b49799eab6
parent24c997dee169f445548a61a62d1ae38311c3bd84 (diff)
parenta88b3bd344cc4a682d16681ef536c1d20e2c2c42 (diff)
downloadvyos-1x-fc3fd89a6fa4a02147348563a7573349b9d9a39f.tar.gz
vyos-1x-fc3fd89a6fa4a02147348563a7573349b9d9a39f.zip
Merge pull request #3327 from sarthurdev/T6241
pki: T6241: do not call dependency before its initialization
-rwxr-xr-xsrc/conf_mode/pki.py8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/conf_mode/pki.py b/src/conf_mode/pki.py
index 6228ff0d2..8deec0e85 100755
--- a/src/conf_mode/pki.py
+++ b/src/conf_mode/pki.py
@@ -25,6 +25,7 @@ from vyos.configdep import set_dependents
from vyos.configdep import call_dependents
from vyos.configdict import node_changed
from vyos.configdiff import Diff
+from vyos.configdiff import get_config_diff
from vyos.defaults import directories
from vyos.pki import is_ca_certificate
from vyos.pki import load_certificate
@@ -199,6 +200,7 @@ def get_config(config=None):
pki['system'] = conf.get_config_dict([], key_mangling=('-', '_'),
get_first_key=True,
no_tag_node_value_mangle=True)
+ D = get_config_diff(conf)
for search in sync_search:
for key in search['keys']:
@@ -230,9 +232,11 @@ def get_config(config=None):
if path[0] == 'interfaces':
ifname = found_path[0]
- set_dependents(path[1], conf, ifname)
+ if not D.node_changed_presence(path + [ifname]):
+ set_dependents(path[1], conf, ifname)
else:
- set_dependents(path[1], conf)
+ if not D.node_changed_presence(path):
+ set_dependents(path[1], conf)
return pki