"""Create bidirectional cross-connect between 2 interfaces on vpp node.
:param node: Node to add bidirectional cross-connect
- :param interface1: first interface
- :param interface2: second interface
+ :param interface1: first interface name or sw_if_index
+ :param interface2: second interface name or sw_if_index
:type node: dict
- :type interface1: str
- :type interface2: str
+ :type interface1: str or int
+ :type interface2: str or int
"""
- sw_iface1 = Topology().get_interface_sw_index(node, interface1)
- sw_iface2 = Topology().get_interface_sw_index(node, interface2)
+
+ if isinstance(interface1, basestring):
+ sw_iface1 = Topology().get_interface_sw_index(node, interface1)
+ else:
+ sw_iface1 = interface1
+
+ if isinstance(interface2, basestring):
+ sw_iface2 = Topology().get_interface_sw_index(node, interface2)
+ else:
+ sw_iface2 = interface2
+
with VatTerminal(node) as vat:
vat.vat_terminal_exec_cmd_from_template('l2_xconnect.vat',
interface1=sw_iface1,