Code Review
/
csit.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
review
|
tree
raw
|
inline
| side by side
Reformat python libraries.
[csit.git]
/
resources
/
libraries
/
python
/
IPv4Setup.py
diff --git
a/resources/libraries/python/IPv4Setup.py
b/resources/libraries/python/IPv4Setup.py
index
a9d9caa
..
14179c3
100644
(file)
--- a/
resources/libraries/python/IPv4Setup.py
+++ b/
resources/libraries/python/IPv4Setup.py
@@
-16,11
+16,11
@@
from socket import inet_ntoa
from struct import pack
from abc import ABCMeta, abstractmethod
from socket import inet_ntoa
from struct import pack
from abc import ABCMeta, abstractmethod
+
from robot.api.deco import keyword
from robot.api.deco import keyword
-import resources.libraries.python.ssh as ssh
+from resources.libraries.python.ssh import exec_cmd_no_error
from resources.libraries.python.Routing import Routing
from resources.libraries.python.Routing import Routing
-from resources.libraries.python.InterfaceUtil import InterfaceUtil
from resources.libraries.python.topology import NodeType, Topology
from resources.libraries.python.VatExecutor import VatExecutor
from resources.libraries.python.topology import NodeType, Topology
from resources.libraries.python.VatExecutor import VatExecutor
@@
-39,11
+39,11
@@
class IPv4Node(object):
@abstractmethod
def set_ip(self, interface, address, prefix_length):
@abstractmethod
def set_ip(self, interface, address, prefix_length):
- """Configure IPv4 address on interface
+ """Configure IPv4 address on interface
.
- :param interface:
interface name
- :param address:
- :param prefix_length:
+ :param interface:
Interface name.
+ :param address:
IPv4 address.
+ :param prefix_length:
IPv4 prefix length.
:type interface: str
:type address: str
:type prefix_length: int
:type interface: str
:type address: str
:type prefix_length: int
@@
-53,12
+53,12
@@
class IPv4Node(object):
@abstractmethod
def set_route(self, network, prefix_length, gateway, interface):
@abstractmethod
def set_route(self, network, prefix_length, gateway, interface):
- """Configure IPv4 route
+ """Configure IPv4 route
.
- :param network:
network IPv4 address
- :param prefix_length:
mask length
- :param gateway: IPv4 address of the gateway
- :param interface:
interface name
+ :param network:
Network IPv4 address.
+ :param prefix_length:
IPv4 prefix length.
+ :param gateway: IPv4 address of the gateway
.
+ :param interface:
Interface name.
:type network: str
:type prefix_length: int
:type gateway: str
:type network: str
:type prefix_length: int
:type gateway: str
@@
-69,12
+69,12
@@
class IPv4Node(object):
@abstractmethod
def unset_route(self, network, prefix_length, gateway, interface):
@abstractmethod
def unset_route(self, network, prefix_length, gateway, interface):
- """Remove specified IPv4 route
+ """Remove specified IPv4 route
.
- :param network:
network IPv4 address
- :param prefix_length:
mask length
- :param gateway: IPv4 address of the gateway
- :param interface:
interface name
+ :param network:
Network IPv4 address.
+ :param prefix_length:
IPv4 prefix length.
+ :param gateway: IPv4 address of the gateway
.
+ :param interface:
Interface name.
:type network: str
:type prefix_length: int
:type gateway: str
:type network: str
:type prefix_length: int
:type gateway: str
@@
-85,9
+85,9
@@
class IPv4Node(object):
@abstractmethod
def flush_ip_addresses(self, interface):
@abstractmethod
def flush_ip_addresses(self, interface):
- """Flush all IPv4 addresses from specified interface
+ """Flush all IPv4 addresses from specified interface
.
- :param interface:
interface name
+ :param interface:
Interface name.
:type interface: str
:return: nothing
"""
:type interface: str
:return: nothing
"""
@@
-95,10
+95,10
@@
class IPv4Node(object):
@abstractmethod
def ping(self, destination_address, source_interface):
@abstractmethod
def ping(self, destination_address, source_interface):
- """Send an ICMP request to destination node
+ """Send an ICMP request to destination node
.
- :param destination_address:
address to send the ICMP request
- :param source_interface:
+ :param destination_address:
Address to send the ICMP request.
+ :param source_interface:
Source interface name.
:type destination_address: str
:type source_interface: str
:return: nothing
:type destination_address: str
:type source_interface: str
:return: nothing
@@
-112,10
+112,10
@@
class Tg(IPv4Node):
super(Tg, self).__init__(node_info)
def _execute(self, cmd):
super(Tg, self).__init__(node_info)
def _execute(self, cmd):
- return
ssh.
exec_cmd_no_error(self.node_info, cmd)
+ return exec_cmd_no_error(self.node_info, cmd)
def _sudo_execute(self, cmd):
def _sudo_execute(self, cmd):
- return
ssh.
exec_cmd_no_error(self.node_info, cmd, sudo=True)
+ return exec_cmd_no_error(self.node_info, cmd, sudo=True)
def set_ip(self, interface, address, prefix_length):
cmd = 'ip -4 addr flush dev {}'.format(interface)
def set_ip(self, interface, address, prefix_length):
cmd = 'ip -4 addr flush dev {}'.format(interface)
@@
-152,19
+152,20
@@
class Dut(IPv4Node):
super(Dut, self).__init__(node_info)
def get_sw_if_index(self, interface):
super(Dut, self).__init__(node_info)
def get_sw_if_index(self, interface):
- """Get sw_if_index of specified interface from current node
+ """Get sw_if_index of specified interface from current node
.
- :param interface:
interface name
+ :param interface:
Interface name.
:type interface: str
:type interface: str
- :return: sw_if_index of 'int' type
+ :return: sw_if_index of the interface or None.
+ :rtype: int
"""
return Topology().get_interface_sw_index(self.node_info, interface)
def exec_vat(self, script, **args):
"""Wrapper for VAT executor.
"""
return Topology().get_interface_sw_index(self.node_info, interface)
def exec_vat(self, script, **args):
"""Wrapper for VAT executor.
- :param script:
script to execute
- :param args:
parameters to the script
+ :param script:
Script to execute.
+ :param args:
Parameters to the script.
:type script: str
:type args: dict
:return: nothing
:type script: str
:type args: dict
:return: nothing
@@
-193,8
+194,8
@@
class Dut(IPv4Node):
def set_route(self, network, prefix_length, gateway, interface):
Routing.vpp_route_add(self.node_info,
def set_route(self, network, prefix_length, gateway, interface):
Routing.vpp_route_add(self.node_info,
- network=network, prefix_len=prefix_length,
- gateway=gateway, interface=interface)
+
network=network, prefix_len=prefix_length,
+
gateway=gateway, interface=interface)
def unset_route(self, network, prefix_length, gateway, interface):
self.exec_vat('del_route.vat', network=network,
def unset_route(self, network, prefix_length, gateway, interface):
self.exec_vat('del_route.vat', network=network,
@@
-215,8
+216,9
@@
class Dut(IPv4Node):
def get_node(node_info):
"""Creates a class instance derived from Node based on type.
def get_node(node_info):
"""Creates a class instance derived from Node based on type.
- :param node_info: dictionary containing information on nodes in topology
- :return: Class instance that is derived from Node
+ :param node_info: Dictionary containing information on nodes in topology.
+ :type node_info: dict
+ :return: Class instance that is derived from Node.
"""
if node_info['type'] == NodeType.TG:
return Tg(node_info)
"""
if node_info['type'] == NodeType.TG:
return Tg(node_info)
@@
-234,14
+236,13
@@
class IPv4Setup(object):
def vpp_nodes_set_ipv4_addresses(nodes, nodes_addr):
"""Set IPv4 addresses on all VPP nodes in topology.
def vpp_nodes_set_ipv4_addresses(nodes, nodes_addr):
"""Set IPv4 addresses on all VPP nodes in topology.
-
:param nodes: Nodes of the test topology.
-
:param nodes_addr: Available nodes IPv4 a
dresses.
-
:type nodes: dict
-
:type nodes_addr: dict
- :return: affected interfaces as list of (node, interface) tuples
-
:rtype: list
+ :param nodes: Nodes of the test topology.
+
:param nodes_addr: Available nodes IPv4 ad
dresses.
+ :type nodes: dict
+ :type nodes_addr: dict
+ :return: Affected interfaces as list of (node, interface) tuples.
+ :rtype: list
"""
"""
-
interfaces = []
for net in nodes_addr.values():
for port in net['ports'].values():
interfaces = []
for net in nodes_addr.values():
for port in net['ports'].values():
@@
-264,13
+265,15
@@
class IPv4Setup(object):
'from "${nodes_addr}"')
def get_ip_addr(node, interface, nodes_addr):
"""Return IPv4 address of the node port.
'from "${nodes_addr}"')
def get_ip_addr(node, interface, nodes_addr):
"""Return IPv4 address of the node port.
+
:param node: Node in the topology.
:param interface: Interface name of the node.
:param node: Node in the topology.
:param interface: Interface name of the node.
- :param nodes_addr: Nodes IPv4 adresses.
+ :param nodes_addr: Nodes IPv4 ad
d
resses.
:type node: dict
:type interface: str
:type nodes_addr: dict
:type node: dict
:type interface: str
:type nodes_addr: dict
- :return: IPv4 address string
+ :return: IPv4 address.
+ :rtype: str
"""
for net in nodes_addr.values():
for port in net['ports'].values():
"""
for net in nodes_addr.values():
for port in net['ports'].values():
@@
-295,7
+298,7
@@
class IPv4Setup(object):
:param nodes_info: Dictionary containing information on all nodes
in topology.
:param nodes_info: Dictionary containing information on all nodes
in topology.
- :param nodes_addr: Nodes IPv4 adresses.
+ :param nodes_addr: Nodes IPv4 ad
d
resses.
:type nodes_info: dict
:type nodes_addr: dict
"""
:type nodes_info: dict
:type nodes_addr: dict
"""
@@
-303,8
+306,6
@@
class IPv4Setup(object):
if node['type'] == NodeType.TG:
continue
for interface, interface_data in node['interfaces'].iteritems():
if node['type'] == NodeType.TG:
continue
for interface, interface_data in node['interfaces'].iteritems():
- if interface == 'mgmt':
- continue
interface_name = interface_data['name']
adj_node, adj_int = Topology.\
get_adjacent_node_and_interface(nodes_info, node,
interface_name = interface_data['name']
adj_node, adj_int = Topology.\
get_adjacent_node_and_interface(nodes_info, node,
@@
-312,4
+313,4
@@
class IPv4Setup(object):
ip_address = IPv4Setup.get_ip_addr(adj_node, adj_int['name'],
nodes_addr)
mac_address = adj_int['mac_address']
ip_address = IPv4Setup.get_ip_addr(adj_node, adj_int['name'],
nodes_addr)
mac_address = adj_int['mac_address']
- get_node(node).set_arp(interface_name, ip_address, mac_address)
\ No newline at end of file
+ get_node(node).set_arp(interface_name, ip_address, mac_address)