From 888eec975ff765216e4c65ba15ed9176d7dee7ea Mon Sep 17 00:00:00 2001 From: Nataliia Solomko Date: Tue, 7 Oct 2025 18:21:06 +0300 Subject: T7750: VPP: CGNAT commit failure with vpptunX interface Allow using bond interfaces in CGNAT. Improve interface cleanup to rely on VPP API queries, as VPP config changes may modify interface indexes --- src/conf_mode/vpp_kernel-interfaces.py | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'src/conf_mode/vpp_kernel-interfaces.py') diff --git a/src/conf_mode/vpp_kernel-interfaces.py b/src/conf_mode/vpp_kernel-interfaces.py index 85706094e..d10449eec 100644 --- a/src/conf_mode/vpp_kernel-interfaces.py +++ b/src/conf_mode/vpp_kernel-interfaces.py @@ -19,6 +19,7 @@ import os from vyos.config import Config +from vyos.configdep import set_dependents, call_dependents from vyos.configdict import leaf_node_changed from vyos.configdict import node_changed from vyos import ConfigError @@ -79,6 +80,9 @@ def get_config(config=None) -> dict: if vlans_removed: config['vlans_removed'] = vlans_removed + if conf.exists(['vpp', 'nat', 'cgnat']): + set_dependents('vpp_nat_cgnat', conf) + config['ifname'] = ifname return config @@ -185,6 +189,8 @@ def apply(config): lcp_name = vpp_control.lcp_pair_find(kernel_name=ifname).get('vpp_name_kernel') vpp_control.iface_rxmode(lcp_name, rx_mode) + call_dependents() + return None -- cgit v1.2.3