Refactor core network handling in CI, harmonize code
Prior to change set, there is a highly heterogeneous situation for core network management in CI code: some log collection is done from groovy files (when it could be done in python, which is easier for local development), there are multiple commands to start a CN from XML files, the code for starting a CN is always different (no one unified way to start "any" CN), Ping/Iperf require some support in ci_infra.yaml, ...
To help with the above, refactor the handling of core networks in the CI code as follows:
- define all CNs in
ci_infra.yaml(basically how to deploy, undeploy, collect logs, and on which node) - make one Python class that reads from
ci_infra.yamland that allows to start/stop previously defined CNs (and add unit tests...) - make one XML command for start/stop of CNs, leveraging above class
- leverage the CNs defined in
ci_infra.yamlconsistently inPing()/Iperf() - delete old code
Furthermore, the following supporting changes/bugfixes are done:
- repair
Iperf2_Unidir()and add unit test - fix a number of invalid escape sequence errors (there are some remaining, which I will do soon)
- various bug fixes
- remove unused XML steps
Edited by Robert Schmidt