From: Jan Gelety Date: Tue, 18 Jun 2019 18:38:55 +0000 (+0200) Subject: FIX: ip scale needs sw_if_index in VAT command X-Git-Url: https://gerrit.fd.io/r/gitweb?p=csit.git;a=commitdiff_plain;h=33ea31791a8be80194a0a86a24e9172e80e9e688 FIX: ip scale needs sw_if_index in VAT command Change-Id: Icb3e22a84af10b98edf83084991b8f2607c95798 Signed-off-by: Jan Gelety --- diff --git a/resources/libraries/python/IPUtil.py b/resources/libraries/python/IPUtil.py index 0c4356bb64..17ba75d7fb 100644 --- a/resources/libraries/python/IPUtil.py +++ b/resources/libraries/python/IPUtil.py @@ -154,6 +154,21 @@ class IPUtil(object): PapiExecutor.run_cli_cmd(node, 'show ip6 fib') PapiExecutor.run_cli_cmd(node, 'show ip6 fib summary') + @staticmethod + def vpp_get_ip_tables_prefix(node, address): + """Get dump of all IP FIB tables on a VPP node. + + :param node: VPP node. + :type node: dict + """ + ip = ip_address(unicode(address)) + + PapiExecutor.run_cli_cmd( + node, 'show {ip_ver} fib {addr}/{addr_len}'.format( + ip_ver='ip6' if ip.version == 6 else 'ip', + addr=ip, + addr_len=ip.max_prefixlen)) + @staticmethod def get_interface_vrf_table(node, interface, ip_version='ipv4'): """Get vrf ID for the given interface. @@ -549,7 +564,7 @@ class IPUtil(object): if count > 100: gateway = kwargs.get("gateway", '') - + interface = kwargs.get("interface", '') vrf = kwargs.get("vrf", None) multipath = kwargs.get("multipath", False) @@ -559,6 +574,9 @@ class IPUtil(object): network=network, prefix_length=prefix_len, via='via {}'.format(gateway) if gateway else '', + sw_if_index='sw_if_index {}'.format( + InterfaceUtil.get_interface_index(node, interface)) + if interface else '', vrf='vrf {}'.format(vrf) if vrf else '', count='count {}'.format(count) if count else '', multipath='multipath' if multipath else '') diff --git a/resources/templates/vat/vpp_route_add.vat b/resources/templates/vat/vpp_route_add.vat index b288c6b610..73bb5acf8a 100644 --- a/resources/templates/vat/vpp_route_add.vat +++ b/resources/templates/vat/vpp_route_add.vat @@ -1 +1 @@ -ip_route_add_del {network}/{prefix_length} {vrf} {count} {multipath} {via} \ No newline at end of file +ip_route_add_del {network}/{prefix_length} {vrf} {count} {multipath} {via} {sw_if_index} \ No newline at end of file