Skip to content

Commit c6b4fe7

Browse files
rodnymolinalguohan
authored andcommitted
Adding bgp's warmrestart timer and on-off knob (#378)
root@node1# config warm_restart bgp_timer 14 root@node1# show warm_restart config name enable timer_name timer_duration ------ -------- ------------ ---------------- bgp false bgp_timer 14 system true NULL NULL root@7d3e5fba80c0:/# config warm_restart enable bgp root@7d3e5fba80c0:/# show warm_restart config name enable timer_name timer_duration ------ -------- ------------ ---------------- bgp true bgp_timer 14 system false NULL NULL Signed-off-by: Rodny Molina <[email protected]>
1 parent 45d85c9 commit c6b4fe7

File tree

2 files changed

+14
-2
lines changed

2 files changed

+14
-2
lines changed

config/main.py

+11-2
Original file line numberDiff line numberDiff line change
@@ -526,14 +526,14 @@ def warm_restart(ctx, redis_unix_socket_path):
526526
pass
527527

528528
@warm_restart.command('enable')
529-
@click.argument('module', metavar='<module>', default='system', required=False, type=click.Choice(["system", "swss"]))
529+
@click.argument('module', metavar='<module>', default='system', required=False, type=click.Choice(["system", "swss", "bgp"]))
530530
@click.pass_context
531531
def warm_restart_enable(ctx, module):
532532
db = ctx.obj['db']
533533
db.mod_entry('WARM_RESTART', module, {'enable': 'true'})
534534

535535
@warm_restart.command('disable')
536-
@click.argument('module', metavar='<module>', default='system', required=False, type=click.Choice(["system", "swss"]))
536+
@click.argument('module', metavar='<module>', default='system', required=False, type=click.Choice(["system", "swss", "bgp"]))
537537
@click.pass_context
538538
def warm_restart_enable(ctx, module):
539539
db = ctx.obj['db']
@@ -548,6 +548,15 @@ def warm_restart_neighsyncd_timer(ctx, seconds):
548548
ctx.fail("neighsyncd warm restart timer must be in range 1-9999")
549549
db.mod_entry('WARM_RESTART', 'swss', {'neighsyncd_timer': seconds})
550550

551+
@warm_restart.command('bgp_timer')
552+
@click.argument('seconds', metavar='<seconds>', required=True, type=int)
553+
@click.pass_context
554+
def warm_restart_bgp_timer(ctx, seconds):
555+
db = ctx.obj['db']
556+
if seconds not in range(1,3600):
557+
ctx.fail("bgp warm restart timer must be in range 1-3600")
558+
db.mod_entry('WARM_RESTART', 'bgp', {'bgp_timer': seconds})
559+
551560
#
552561
# 'vlan' group ('config vlan ...')
553562
#

show/main.py

+3
Original file line numberDiff line numberDiff line change
@@ -1663,6 +1663,9 @@ def tablelize(keys, data):
16631663
if 'neighsyncd_timer' in data[k]:
16641664
r.append("neighsyncd_timer")
16651665
r.append(data[k]['neighsyncd_timer'])
1666+
elif 'bgp_timer' in data[k]:
1667+
r.append("bgp_timer")
1668+
r.append(data[k]['bgp_timer'])
16661669
else:
16671670
r.append("NULL")
16681671
r.append("NULL")

0 commit comments

Comments
 (0)