summaryrefslogtreecommitdiff
path: root/src/conf_mode/protocols_ospfv3.py
diff options
context:
space:
mode:
authorChristian Poessinger <christian@poessinger.com>2021-11-27 10:32:02 +0100
committerChristian Poessinger <christian@poessinger.com>2021-11-27 10:32:02 +0100
commitfe0038c21b170f1b54a5a4461ca3aaade1ef93b7 (patch)
tree6a001b060ad2217e7cfbf269303ac0ac18874f2f /src/conf_mode/protocols_ospfv3.py
parentdf37032ddf58afeff91cfa2b4b0e815a17d44243 (diff)
downloadvyos-1x-fe0038c21b170f1b54a5a4461ca3aaade1ef93b7.tar.gz
vyos-1x-fe0038c21b170f1b54a5a4461ca3aaade1ef93b7.zip
ospfv3: T3753: reload config five (5) times - workaround for FRR issue #10132
Re-applying the same configuration after it failed the first times makes it load. See https://github.com/FRRouting/frr/issues/10132 for more details.
Diffstat (limited to 'src/conf_mode/protocols_ospfv3.py')
-rwxr-xr-xsrc/conf_mode/protocols_ospfv3.py10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/conf_mode/protocols_ospfv3.py b/src/conf_mode/protocols_ospfv3.py
index 374327798..77d9e0366 100755
--- a/src/conf_mode/protocols_ospfv3.py
+++ b/src/conf_mode/protocols_ospfv3.py
@@ -100,7 +100,15 @@ def apply(ospfv3):
if 'new_frr_config' in ospfv3:
frr_cfg.add_before(frr.default_add_before, ospfv3['new_frr_config'])
- frr_cfg.commit_configuration(ospf6_daemon)
+
+ # https://github.com/FRRouting/frr/issues/10132
+ count = 0
+ while count <= 5:
+ count += 1
+ try:
+ frr_cfg.commit_configuration(ospf6_daemon)
+ except:
+ pass
# Save configuration to /run/frr/config/frr.conf
frr.save_configuration()