diff options
author | Christian Poessinger <christian@poessinger.com> | 2021-11-27 19:36:34 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-11-27 19:36:34 +0100 |
commit | 59dc14bee7ca6e4fd2bbabe5c5ae7518839e7a80 (patch) | |
tree | 8164c4cb49efaf0be512e6133259f4b4cfac6009 /src/conf_mode/policy.py | |
parent | 1df8ba611f04c46d49f4cf70d6fa22cfef089392 (diff) | |
parent | 5e38895c906f05ecd3815573f07106a9ccab145a (diff) | |
download | vyos-1x-59dc14bee7ca6e4fd2bbabe5c5ae7518839e7a80.tar.gz vyos-1x-59dc14bee7ca6e4fd2bbabe5c5ae7518839e7a80.zip |
Merge pull request #1089 from c-po/t3753-frr8
T3753 - CLI adjustments for FRR8.1
Diffstat (limited to 'src/conf_mode/policy.py')
-rwxr-xr-x | src/conf_mode/policy.py | 18 |
1 files changed, 6 insertions, 12 deletions
diff --git a/src/conf_mode/policy.py b/src/conf_mode/policy.py index 1a03d520b..5f9fcab9f 100755 --- a/src/conf_mode/policy.py +++ b/src/conf_mode/policy.py @@ -171,9 +171,7 @@ def verify(policy): def generate(policy): if not policy: - policy['new_frr_config'] = '' return None - policy['new_frr_config'] = render_to_string('frr/policy.frr.tmpl', policy) return None @@ -190,8 +188,9 @@ def apply(policy): frr_cfg.modify_section(r'^bgp community-list .*') frr_cfg.modify_section(r'^bgp extcommunity-list .*') frr_cfg.modify_section(r'^bgp large-community-list .*') - frr_cfg.modify_section(r'^route-map .*') - frr_cfg.add_before('^line vty', policy['new_frr_config']) + frr_cfg.modify_section(r'^route-map .*', stop_pattern='^exit', remove_stop_mark=True) + if 'new_frr_config' in policy: + frr_cfg.add_before(frr.default_add_before, policy['new_frr_config']) frr_cfg.commit_configuration(bgp_daemon) # The route-map used for the FIB (zebra) is part of the zebra daemon @@ -200,16 +199,11 @@ def apply(policy): frr_cfg.modify_section(r'^ipv6 access-list .*') frr_cfg.modify_section(r'^ip prefix-list .*') frr_cfg.modify_section(r'^ipv6 prefix-list .*') - frr_cfg.modify_section(r'^route-map .*') - frr_cfg.add_before('^line vty', policy['new_frr_config']) + frr_cfg.modify_section(r'^route-map .*', stop_pattern='^exit', remove_stop_mark=True) + if 'new_frr_config' in policy: + frr_cfg.add_before(frr.default_add_before, policy['new_frr_config']) frr_cfg.commit_configuration(zebra_daemon) - # If FRR config is blank, rerun the blank commit x times due to frr-reload - # behavior/bug not properly clearing out on one commit. - if policy['new_frr_config'] == '': - for a in range(5): - frr_cfg.commit_configuration(zebra_daemon) - # Save configuration to /run/frr/config/frr.conf frr.save_configuration() |