diff options
author | Dave Wallace <dwallacelf@gmail.com> | 2019-12-20 22:46:51 +0000 |
---|---|---|
committer | Peter Mikus <pmikus@cisco.com> | 2020-01-15 07:01:56 +0000 |
commit | 2da2aa12260143bc513b4dff5e2b2ef6755172ab (patch) | |
tree | 8bbd4b177bc7e12cd942b7a91a4af8641af24935 /resources/libraries/python/topology.py | |
parent | 6ae8614cf1459f977508f9f4ba3548ac0a16b231 (diff) |
Hoststack perf infrastructure refactoring
- DUT only topology (hoststack test
apps are co-located with vpp)
- Make vpp app specific keywords generic
where applicable
- Add IP4 Prefix to topology file
- Support running wrk in linux namespace
- Refactor namespace cleanup
- Remove redundant namespace creation code
- Refactor test/keyword dirs: tcp -> hoststack
- Add hoststack utility keywords
- Refactor wrk suite setup/teardown
- Update tests with recent perf infra changes
Change-Id: Ia1cf07978d579393eef94923819a87c8c1f36f34
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
Diffstat (limited to 'resources/libraries/python/topology.py')
-rw-r--r-- | resources/libraries/python/topology.py | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/resources/libraries/python/topology.py b/resources/libraries/python/topology.py index b2d106d3ed..7dec51619c 100644 --- a/resources/libraries/python/topology.py +++ b/resources/libraries/python/topology.py @@ -1,4 +1,4 @@ -# Copyright (c) 2019 Cisco and/or its affiliates. +# Copyright (c) 2020 Cisco and/or its affiliates. # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at: @@ -22,6 +22,8 @@ from yaml import safe_load from robot.api import logger from robot.libraries.BuiltIn import BuiltIn, RobotNotRunningError +from resources.libraries.python.Constants import Constants + __all__ = [ u"DICT__nodes", u"Topology", u"NodeType", u"SocketType", u"NodeSubTypeTG" ] @@ -705,6 +707,22 @@ class Topology: return None @staticmethod + def get_interface_ip4_prefix_length(node, iface_key): + """Get IP4 address prefix length for the interface. + + :param node: Node to get prefix length on. + :param iface_key: Interface key from topology file. + :type node: dict + :type iface_key: str + :returns: Prefix length from topology file or the default + IP4 prefix length if not found. + :rtype: int + :raises: KeyError if iface_key is not found. + """ + return node[u"interfaces"][iface_key].get(u"ip4_prefix_length", \ + Constants.DEFAULT_IP4_PREFIX_LENGTH) + + @staticmethod def get_adjacent_node_and_interface(nodes_info, node, iface_key): """Get node and interface adjacent to specified interface on local network. |