summaryrefslogtreecommitdiff
path: root/smoketest/scripts
diff options
context:
space:
mode:
authorNataliia Solomko <natalirs1985@gmail.com>2026-01-16 17:25:43 +0200
committerNataliia Solomko <natalirs1985@gmail.com>2026-01-16 17:42:10 +0200
commit2d8076c7db448ff49155641ee49ffc8db7c0b837 (patch)
tree73bc9de9302d27215f2530a8c1a231555cc9d533 /smoketest/scripts
parent7fea6b6dbbd786bf6a32c496fc70ca9e9b5f8b1f (diff)
downloadvyos-1x-2d8076c7db448ff49155641ee49ffc8db7c0b837.tar.gz
vyos-1x-2d8076c7db448ff49155641ee49ffc8db7c0b837.zip
vpp: T8143: Incorrect mapping in IPFIX for bond interfaces
Diffstat (limited to 'smoketest/scripts')
-rwxr-xr-xsmoketest/scripts/cli/test_vpp.py34
1 files changed, 33 insertions, 1 deletions
diff --git a/smoketest/scripts/cli/test_vpp.py b/smoketest/scripts/cli/test_vpp.py
index 1886ac615..a5c7ab873 100755
--- a/smoketest/scripts/cli/test_vpp.py
+++ b/smoketest/scripts/cli/test_vpp.py
@@ -32,6 +32,7 @@ from vyos.utils.process import rc_cmd
from vyos.utils.system import sysctl_read
from vyos.system import image
from vyos.vpp import VPPControl
+from vyos.vpp.utils import vpp_iface_name_transform
PROCESS_NAME = 'vpp_main'
VPP_CONF = '/run/vpp/vpp.conf'
@@ -1655,7 +1656,7 @@ class TestVPP(VyOSUnitTestSHIM.TestCase):
self.cli_delete(path_static_arp)
- def test_22_vpp_ipfix(self):
+ def test_22_1_vpp_ipfix(self):
base_ipfix = base_path + ['ipfix']
base_collector = base_ipfix + ['collector']
collector_ip = '127.0.0.2'
@@ -1742,6 +1743,37 @@ class TestVPP(VyOSUnitTestSHIM.TestCase):
len(non_default_exporters), 0, 'Exporters not cleaned up properly'
)
+ def test_22_2_vpp_ipfix_bond(self):
+ base_ipfix = base_path + ['ipfix']
+ base_bond = base_path + ['interfaces', 'bonding']
+ iface_bond = 'bond0'
+ collector_ip = '127.0.0.2'
+ collector_src = '127.0.0.1'
+
+ self.cli_set(base_bond + [iface_bond, 'kernel-interface', 'vpptun0'])
+ self.cli_set(base_bond + [iface_bond, 'member', 'interface', iface_bond])
+
+ self.cli_set(
+ base_ipfix + ['collector', collector_ip, 'source-address', collector_src]
+ )
+ self.cli_set(base_ipfix + ['interface', iface_bond])
+ self.cli_commit()
+
+ vpp_bond_name = vpp_iface_name_transform(iface_bond)
+ required_str = f'{vpp_bond_name} ip4 rx tx'
+
+ # Check bonding interface is added to IPFIX
+ _, out = rc_cmd('sudo vppctl show flowprobe feature')
+ self.assertIn(required_str, out)
+
+ # Change bonding interface configuration
+ self.cli_set(base_bond + [iface_bond, 'mode', '802.3ad'])
+ self.cli_commit()
+
+ # Check interface
+ _, out = rc_cmd('sudo vppctl show flowprobe feature')
+ self.assertIn(required_str, out)
+
if __name__ == '__main__':
unittest.main(verbosity=2, failfast=VyOSUnitTestSHIM.TestCase.debug_on())