summaryrefslogtreecommitdiff
path: root/python
diff options
context:
space:
mode:
authorChristian Breunig <christian@breunig.cc>2026-10-07 19:42:07 +0200
committerGitHub <noreply@github.com>2026-10-07 19:42:07 +0200
commitc5fcf4bcde6582f963e1fb0fb884bfe75bcc8b49 (patch)
treed0376ba972d27a8eb226d20c558c3c23966d39df /python
parentcad6115d7a767f6ba398cc902b25072a832b05b9 (diff)
parentdf22720c7af9fab801f2f7b3b69afd05e6e511e9 (diff)
downloadvyos-1x-c5fcf4bcde6582f963e1fb0fb884bfe75bcc8b49.tar.gz
vyos-1x-c5fcf4bcde6582f963e1fb0fb884bfe75bcc8b49.zip
Merge pull request #5536 from alexk37/bgp-default-local-pref-100
bgp: T9404: do not render "bgp default local-preference" when the value is 100
Diffstat (limited to 'python')
-rw-r--r--python/vyos/frrender.py8
1 files changed, 8 insertions, 0 deletions
diff --git a/python/vyos/frrender.py b/python/vyos/frrender.py
index 69bb93a96..eac03e4d3 100644
--- a/python/vyos/frrender.py
+++ b/python/vyos/frrender.py
@@ -297,6 +297,12 @@ def get_frrender_dict(conf: Config, argv=None) -> dict:
no_tag_node_value_mangle=True,
with_recursive_defaults=True)
bgp['dependent_vrfs'] = {}
+ # The XML default of "parameters default local-pref" is added to the
+ # dict, the template cannot query it while rendering. Only the node
+ # "parameters default" is asked for, not the whole BGP tree.
+ tmp = conf.get_config_defaults(bgp_cli_path + ['parameters', 'default'],
+ key_mangling=('-', '_'), get_first_key=True)
+ bgp['xml_default_local_pref'] = tmp.get('local_pref')
dict.update({'bgp' : bgp})
elif conf.exists_effective(bgp_cli_path):
dict.update({'bgp' : {'deleted' : '', 'dependent_vrfs' : {}}})
@@ -522,6 +528,8 @@ def get_frrender_dict(conf: Config, argv=None) -> dict:
# merge in remaining default values
vrf_config['protocols']['bgp'] = config_dict_merge(default_values,
vrf_config['protocols']['bgp'])
+ vrf_config['protocols']['bgp']['xml_default_local_pref'] = dict_search(
+ 'parameters.default.local_pref', default_values)
# Add this BGP VRF instance as dependency into the default VRF
if 'bgp' in dict: