From acb86c23f944bb3107a18ba6324ac14db9ba7ae4 Mon Sep 17 00:00:00 2001
From: Ross Kusler <rosskus@gmail.com>
Date: Fri, 6 Oct 2023 19:52:45 -0700
Subject: [PATCH] [kube-router] Add option to disable bgp-graceful-restart
 (10488) (#10489)

---
 .../sample/group_vars/k8s_cluster/k8s-net-kube-router.yml      | 3 +++
 roles/network_plugin/kube-router/defaults/main.yml             | 3 +++
 roles/network_plugin/kube-router/templates/kube-router.yml.j2  | 2 +-
 3 files changed, 7 insertions(+), 1 deletion(-)

diff --git a/inventory/sample/group_vars/k8s_cluster/k8s-net-kube-router.yml b/inventory/sample/group_vars/k8s_cluster/k8s-net-kube-router.yml
index e4dfcc9b5..144b38102 100644
--- a/inventory/sample/group_vars/k8s_cluster/k8s-net-kube-router.yml
+++ b/inventory/sample/group_vars/k8s_cluster/k8s-net-kube-router.yml
@@ -19,6 +19,9 @@
 # Add LoadBalancer IP of service status as set by the LB provider to the RIB so that it gets advertised to the BGP peers.
 # kube_router_advertise_loadbalancer_ip: false
 
+# Enables BGP graceful restarts
+# kube_router_bgp_graceful_restart: true
+
 # Adjust manifest of kube-router daemonset template with DSR needed changes
 # kube_router_enable_dsr: false
 
diff --git a/roles/network_plugin/kube-router/defaults/main.yml b/roles/network_plugin/kube-router/defaults/main.yml
index 5d4dccc34..c01a3532b 100644
--- a/roles/network_plugin/kube-router/defaults/main.yml
+++ b/roles/network_plugin/kube-router/defaults/main.yml
@@ -18,6 +18,9 @@ kube_router_advertise_external_ip: false
 # Add LoadBalancer IP of service status as set by the LB provider to the RIB so that it gets advertised to the BGP peers.
 kube_router_advertise_loadbalancer_ip: false
 
+# Enables BGP graceful restarts
+kube_router_bgp_graceful_restart: true
+
 # Adjust manifest of kube-router daemonset template with DSR needed changes
 kube_router_enable_dsr: false
 
diff --git a/roles/network_plugin/kube-router/templates/kube-router.yml.j2 b/roles/network_plugin/kube-router/templates/kube-router.yml.j2
index ab677abc8..89ded6e49 100644
--- a/roles/network_plugin/kube-router/templates/kube-router.yml.j2
+++ b/roles/network_plugin/kube-router/templates/kube-router.yml.j2
@@ -39,7 +39,7 @@ spec:
         - --run-firewall={{ kube_router_run_firewall | bool }}
         - --run-service-proxy={{ kube_router_run_service_proxy | bool }}
         - --kubeconfig=/var/lib/kube-router/kubeconfig
-        - --bgp-graceful-restart=true
+        - --bgp-graceful-restart={{ kube_router_bgp_graceful_restart }}
 {% if kube_router_advertise_cluster_ip %}
         - --advertise-cluster-ip
 {% endif %}
-- 
GitLab