:param nodes: Topology nodes.
:type nodes: dict
- :returns: True - success, False - error
- :rtype: bool
+ :raises RuntimeError: If setup framework failed.
"""
tarball = pack_framework_dir()
delete_local_tarball(tarball)
if node_success:
logger.console('All nodes are ready')
- return True
else:
- logger.console('Failed to setup framework')
- return False
+ raise RuntimeError('Failed to setup framework')
class CleanupFramework(object):
:param nodes: Topology nodes.
:type nodes: dict
- :returns: True - success, False - error
- :rtype: bool
+ :raises RuntimeError: If cleanup framework failed.
"""
# Turn off logging since we use multiprocessing
log_level = BuiltIn().set_log_level('NONE')
if node_success:
logger.console('All nodes cleaned up')
- return True
else:
- logger.console('Failed to cleaned up framework')
- return False
+ raise RuntimeError('Failed to cleaned up framework')
| Resource | resources/libraries/robot/shared/default.robot
| Resource | resources/libraries/robot/shared/interfaces.robot
| Library | resources.libraries.python.SetupFramework
+| Library | resources.libraries.python.SetupFramework.CleanupFramework
| Library | resources.libraries.python.DPDK.DPDKTools
| Suite Setup | Run Keywords | Setup performance global Variables
| ... | AND | Setup Framework | ${nodes}
| ... | AND | Get CPU Layout from all nodes | ${nodes}
| ... | AND | Update All Numa Nodes
| ... | ${nodes} | skip_tg=${True}
+| Suite Teardown | Cleanup Framework | ${nodes}
*** Keywords ***
| Setup performance global Variables
| Resource | resources/libraries/robot/honeycomb/honeycomb.robot
| Resource | resources/libraries/robot/honeycomb/performance.robot
| Library | resources.libraries.python.SetupFramework
+| Library | resources.libraries.python.SetupFramework.CleanupFramework
| Library | resources.libraries.python.CpuUtils
| Library | resources.libraries.python.honeycomb.Performance
| Suite Setup | Setup suite for Honeycomb performance tests
| ... | Stop VPP Service on DUT | ${node}
| ... | AND | Archive Honeycomb Logs | ${node} | perf=${True}
| ... | AND | Stop honeycomb service on DUTs | ${node}
+| ... | AND | Cleanup Framework | ${nodes}
*** Keywords ***
| Setup suite for Honeycomb performance tests
| Library | resources.libraries.python.NodePath
| Library | resources.libraries.python.SchedUtils
| Library | resources.libraries.python.SetupFramework
+| Library | resources.libraries.python.SetupFramework.CleanupFramework
| Library | resources.libraries.python.topology.Topology
| Library | Collections
| Suite Setup | Run Keywords | Setup performance global Variables
| ... | AND | Update all numa nodes | ${nodes}
| ... | skip_tg=${True}
| ... | AND | Update NIC interface names on all duts | ${nodes}
-| ...
-| Suite Teardown | Destroy Kubernetes on all duts | ${nodes}
+| Suite Teardown | Run Keywords | Destroy Kubernetes on all duts | ${nodes}
+| ... | AND | Cleanup Framework | ${nodes}
*** Keywords ***
| Setup performance global Variables
| Resource | resources/libraries/robot/shared/default.robot
| Resource | resources/libraries/robot/shared/interfaces.robot
| Library | resources.libraries.python.SetupFramework
+| Library | resources.libraries.python.SetupFramework.CleanupFramework
| Library | resources.libraries.python.CpuUtils
| Suite Setup | Run Keywords | Setup performance global Variables
| ... | AND | Setup Framework | ${nodes}
| ... | AND | Get CPU Layout from all nodes | ${nodes}
| ... | AND | Update All Interface Data On All Nodes
| ... | ${nodes} | skip_tg=${True} | numa_node=${True}
+| Suite Teardown | Cleanup Framework | ${nodes}
*** Keywords ***
| Setup performance global Variables