diff options
author | John Estabrook <jestabro@vyos.io> | 2024-04-17 14:14:29 -0500 |
---|---|---|
committer | sarthurdev <965089+sarthurdev@users.noreply.github.com> | 2024-04-18 14:27:46 +0200 |
commit | a88b3bd344cc4a682d16681ef536c1d20e2c2c42 (patch) | |
tree | 3a0e2f2394650dbfd27bc89ddbd285b49799eab6 | |
parent | 24c997dee169f445548a61a62d1ae38311c3bd84 (diff) | |
download | vyos-1x-a88b3bd344cc4a682d16681ef536c1d20e2c2c42.tar.gz vyos-1x-a88b3bd344cc4a682d16681ef536c1d20e2c2c42.zip |
pki: T6241: do not call dependency before its initialization
-rwxr-xr-x | src/conf_mode/pki.py | 8 |
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 |