From 36b381f35ac98d48c0ce90a444ffeb3108752229 Mon Sep 17 00:00:00 2001 From: Eduardo Olivares Date: Tue, 14 Jul 2026 12:40:25 +0200 Subject: [PATCH] [ci_gen_kustomize_values] BGP: generate gateway IP for network bridges from CIDR Use `ansible.utils.nthhost(1)` to derive the bridge gateway IP directly from the network CIDR instead of requiring a hardcoded `gateway` field in `values.yaml`. This ensures the `internalapi` and `storage` bridge gateway addresses in BGP deployments are always consistent with the configured subnet. Required by the NNCP fix in the `architecture` repo (OSPRH-32725), where the NNCP desired state must include the bridge gateway IP so NMState does not remove it during periodic reconciliation cycles, which otherwise causes `ovn-controller` to lose connectivity to the OVN SB DB pods. Related-Issue: #OSPRH-32725 Assisted-By: Claude Sonnet 4.6 Signed-off-by: Eduardo Olivares --- .../templates/bgp-l3-xl/network-values/values.yaml.j2 | 1 + .../templates/bgp_dt01/network-values/values.yaml.j2 | 1 + 2 files changed, 2 insertions(+) diff --git a/roles/ci_gen_kustomize_values/templates/bgp-l3-xl/network-values/values.yaml.j2 b/roles/ci_gen_kustomize_values/templates/bgp-l3-xl/network-values/values.yaml.j2 index 8e849cafa..2e08026f4 100644 --- a/roles/ci_gen_kustomize_values/templates/bgp-l3-xl/network-values/values.yaml.j2 +++ b/roles/ci_gen_kustomize_values/templates/bgp-l3-xl/network-values/values.yaml.j2 @@ -108,6 +108,7 @@ data: {% endfor %} {% endif %} {% endif %} + gateway: {{ network.network_v4 | ansible.utils.nthhost(1) }} prefix-length: {{ network.network_v4 | ansible.utils.ipaddr('prefix') }} mtu: {{ network.mtu | default(1500) }} {% if network.vlan_id is defined %} diff --git a/roles/ci_gen_kustomize_values/templates/bgp_dt01/network-values/values.yaml.j2 b/roles/ci_gen_kustomize_values/templates/bgp_dt01/network-values/values.yaml.j2 index 9b95aeda1..c4da7de5f 100644 --- a/roles/ci_gen_kustomize_values/templates/bgp_dt01/network-values/values.yaml.j2 +++ b/roles/ci_gen_kustomize_values/templates/bgp_dt01/network-values/values.yaml.j2 @@ -114,6 +114,7 @@ data: {% endfor %} {% endif %} {% endif %} + gateway: {{ network.network_v4 | ansible.utils.nthhost(1) }} prefix-length: {{ network.network_v4 | ansible.utils.ipaddr('prefix') }} mtu: {{ network.mtu | default(1500) }} {% if network.vlan_id is defined %}