diff options
author | Miroslav Miklus <mmiklus@cisco.com> | 2016-05-08 14:11:51 +0200 |
---|---|---|
committer | Jan Gelety <jgelety@cisco.com> | 2016-06-28 00:15:03 +0000 |
commit | cbd47fbe97945e9dc6584d08cd2266e3a7536a68 (patch) | |
tree | 9344a863606381b2ce8069d82f0731440c31b295 /resources/libraries/python/IPUtil.py | |
parent | 1689b0781206d874fd2b664cdd7d770f1e3932c8 (diff) |
Use interface key instead of interface name.
JIRA: CSIT-141
Change-Id: I75cef6d570ab45ea9c4af838b6bf68cefc7c1a91
Signed-off-by: Miroslav Miklus <mmiklus@cisco.com>
Diffstat (limited to 'resources/libraries/python/IPUtil.py')
-rw-r--r-- | resources/libraries/python/IPUtil.py | 20 |
1 files changed, 16 insertions, 4 deletions
diff --git a/resources/libraries/python/IPUtil.py b/resources/libraries/python/IPUtil.py index e364e60cee..323c75bda4 100644 --- a/resources/libraries/python/IPUtil.py +++ b/resources/libraries/python/IPUtil.py @@ -17,30 +17,42 @@ from ipaddress import IPv4Network from resources.libraries.python.ssh import SSH from resources.libraries.python.constants import Constants +from resources.libraries.python.topology import Topology class IPUtil(object): """Common IP utilities""" @staticmethod - def vpp_ip_probe(node, interface, addr): + def vpp_ip_probe(node, interface, addr, if_type="key"): """Run ip probe on VPP node. :param node: VPP node. - :param interface: Interface name. + :param interface: Interface key or name. :param addr: IPv4/IPv6 address. + :param if_type: Interface type :type node: dict :type interface: str :type addr: str + :type if_type: str + :raises ValueError: If the if_type is unknown. + :raises Exception: If vpp probe fails. """ ssh = SSH() ssh.connect(node) + if if_type == "key": + iface_name = Topology.get_interface_name(node, interface) + elif if_type == "name": + iface_name = interface + else: + raise ValueError("if_type unknown: {}".format(if_type)) + cmd = "{c}".format(c=Constants.VAT_BIN_NAME) - cmd_input = 'exec ip probe {dev} {ip}'.format(dev=interface, ip=addr) + cmd_input = 'exec ip probe {dev} {ip}'.format(dev=iface_name, ip=addr) (ret_code, _, _) = ssh.exec_command_sudo(cmd, cmd_input) if int(ret_code) != 0: raise Exception('VPP ip probe {dev} {ip} failed on {h}'.format( - dev=interface, ip=addr, h=node['host'])) + dev=iface_name, ip=addr, h=node['host'])) def convert_ipv4_netmask_prefix(network): |