<?xml version="1.0" encoding="UTF-8"?>
<robot generator="Robot 7.4.2 (Python 3.11.10 on linux)" generated="2026-05-29T00:44:20.717920" rpa="false" schemaversion="5">
<suite id="s1" name="openflowplugin-scale-link.txt" source="/w/workspace/openflowplugin-csit-1node-scale-link-only-vanadium/test/csit/suites/openflowplugin/Maximum_Links">
<suite id="s1-s1" name="Finding Max Links" source="/w/workspace/openflowplugin-csit-1node-scale-link-only-vanadium/test/csit/suites/openflowplugin/Maximum_Links/010__finding_max_links.robot">
<kw name="Workflow Setup" owner="WorkflowsOpenFlow" type="SETUP">
<kw name="Create Session" owner="RequestsLibrary">
<msg time="2026-05-29T00:44:21.507881" level="INFO">Creating Session using : alias=session, url=http://10.30.171.215:8181, headers={'Content-Type': 'application/xml'},                     cookies={}, auth=&lt;requests.auth.HTTPBasicAuth object at 0x72a45e8a46d0&gt;, timeout=None, proxies=None, verify=False,                     debug=0 </msg>
<arg>session</arg>
<arg>http://${ODL_SYSTEM_IP}:${RESTCONFPORT}</arg>
<arg>auth=${AUTH}</arg>
<arg>headers=${HEADERS_XML}</arg>
<doc>Create Session: create a HTTP session to a server</doc>
<status status="PASS" start="2026-05-29T00:44:21.507460" elapsed="0.000738"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Issue_Command_On_Karaf_Console" owner="KarafKeywords">
<if>
<branch type="IF" condition="'${IS_KARAF_APPL}' == 'False'">
<return>
<value>Not A Karaf App</value>
<status status="NOT RUN" start="2026-05-29T00:44:21.514381" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-29T00:44:21.514228" elapsed="0.000215"/>
</branch>
<status status="PASS" start="2026-05-29T00:44:21.514198" elapsed="0.000271"/>
</if>
<kw name="Open Connection" owner="SSHLibrary">
<arg>${controller}</arg>
<arg>port=${karaf_port}</arg>
<arg>prompt=${KARAF_PROMPT_LOGIN}</arg>
<arg>timeout=${timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-29T00:44:21.514634" elapsed="0.000503"/>
</kw>
<kw name="Login" owner="SSHLibrary">
<msg time="2026-05-29T00:44:21.515613" level="INFO">Logging into '10.30.171.215:8101' as 'karaf'.</msg>
<msg time="2026-05-29T00:44:21.516802" level="FAIL">NoValidConnectionsError: [Errno None] Unable to connect to port 8101 on 10.30.171.215</msg>
<arg>${KARAF_USER}</arg>
<arg>${KARAF_PASSWORD}</arg>
<arg>loglevel=${loglevel}</arg>
<doc>Logs into the SSH server with the given ``username`` and ``password``.</doc>
<status status="FAIL" start="2026-05-29T00:44:21.515326" elapsed="0.002962">NoValidConnectionsError: [Errno None] Unable to connect to port 8101 on 10.30.171.215</status>
</kw>
<kw name="Write" owner="SSHLibrary">
<arg>${cmd}</arg>
<doc>Writes the given ``text`` on the remote machine and appends a newline.</doc>
<status status="NOT RUN" start="2026-05-29T00:44:21.518492" elapsed="0.000026"/>
</kw>
<kw name="Read Until Regexp" owner="SSHLibrary">
<var>${output}</var>
<arg>${KARAF_PROMPT}</arg>
<doc>Consumes and returns the server output until a match to ``regexp`` is found.</doc>
<status status="NOT RUN" start="2026-05-29T00:44:21.518687" elapsed="0.000026"/>
</kw>
<kw name="Write Bare" owner="SSHLibrary">
<arg>logout\n</arg>
<doc>Writes the given ``text`` on the remote machine without appending a newline.</doc>
<status status="NOT RUN" start="2026-05-29T00:44:21.518873" elapsed="0.000021"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-05-29T00:44:21.519048" elapsed="0.000037"/>
</kw>
<kw name="Log" owner="BuiltIn">
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-29T00:44:21.519241" elapsed="0.000021"/>
</kw>
<return>
<value>${output}</value>
<status status="NOT RUN" start="2026-05-29T00:44:21.519307" elapsed="0.000018"/>
</return>
<arg>log:set ${log_level}</arg>
<doc>Will execute the given ${cmd} by ssh'ing to the karaf console running on 10.30.171.215
Note that this keyword will open&amp;close new SSH connection, without switching back to previously current session.</doc>
<status status="FAIL" start="2026-05-29T00:44:21.513844" elapsed="0.005592">NoValidConnectionsError: [Errno None] Unable to connect to port 8101 on 10.30.171.215</status>
</kw>
<kw name="Issue_Command_On_Karaf_Console" owner="KarafKeywords">
<if>
<branch type="IF" condition="'${IS_KARAF_APPL}' == 'False'">
<return>
<value>Not A Karaf App</value>
<status status="NOT RUN" start="2026-05-29T00:44:22.528985" elapsed="0.000019"/>
</return>
<status status="NOT RUN" start="2026-05-29T00:44:22.528829" elapsed="0.000223"/>
</branch>
<status status="PASS" start="2026-05-29T00:44:22.528801" elapsed="0.000289"/>
</if>
<kw name="Open Connection" owner="SSHLibrary">
<arg>${controller}</arg>
<arg>port=${karaf_port}</arg>
<arg>prompt=${KARAF_PROMPT_LOGIN}</arg>
<arg>timeout=${timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-29T00:44:22.529263" elapsed="0.000504"/>
</kw>
<kw name="Login" owner="SSHLibrary">
<msg time="2026-05-29T00:44:22.530244" level="INFO">Logging into '10.30.171.215:8101' as 'karaf'.</msg>
<msg time="2026-05-29T00:44:22.531367" level="FAIL">NoValidConnectionsError: [Errno None] Unable to connect to port 8101 on 10.30.171.215</msg>
<arg>${KARAF_USER}</arg>
<arg>${KARAF_PASSWORD}</arg>
<arg>loglevel=${loglevel}</arg>
<doc>Logs into the SSH server with the given ``username`` and ``password``.</doc>
<status status="FAIL" start="2026-05-29T00:44:22.529944" elapsed="0.001932">NoValidConnectionsError: [Errno None] Unable to connect to port 8101 on 10.30.171.215</status>
</kw>
<kw name="Write" owner="SSHLibrary">
<arg>${cmd}</arg>
<doc>Writes the given ``text`` on the remote machine and appends a newline.</doc>
<status status="NOT RUN" start="2026-05-29T00:44:22.532058" elapsed="0.000049"/>
</kw>
<kw name="Read Until Regexp" owner="SSHLibrary">
<var>${output}</var>
<arg>${KARAF_PROMPT}</arg>
<doc>Consumes and returns the server output until a match to ``regexp`` is found.</doc>
<status status="NOT RUN" start="2026-05-29T00:44:22.532262" elapsed="0.000020"/>
</kw>
<kw name="Write Bare" owner="SSHLibrary">
<arg>logout\n</arg>
<doc>Writes the given ``text`` on the remote machine without appending a newline.</doc>
<status status="NOT RUN" start="2026-05-29T00:44:22.532429" elapsed="0.000020"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-05-29T00:44:22.532591" elapsed="0.000019"/>
</kw>
<kw name="Log" owner="BuiltIn">
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-29T00:44:22.532759" elapsed="0.000020"/>
</kw>
<return>
<value>${output}</value>
<status status="NOT RUN" start="2026-05-29T00:44:22.532820" elapsed="0.000016"/>
</return>
<arg>log:set ${log_level}</arg>
<doc>Will execute the given ${cmd} by ssh'ing to the karaf console running on 10.30.171.215
Note that this keyword will open&amp;close new SSH connection, without switching back to previously current session.</doc>
<status status="FAIL" start="2026-05-29T00:44:22.528177" elapsed="0.004763">NoValidConnectionsError: [Errno None] Unable to connect to port 8101 on 10.30.171.215</status>
</kw>
<kw name="Issue_Command_On_Karaf_Console" owner="KarafKeywords">
<if>
<branch type="IF" condition="'${IS_KARAF_APPL}' == 'False'">
<return>
<value>Not A Karaf App</value>
<status status="NOT RUN" start="2026-05-29T00:44:23.542021" elapsed="0.000038"/>
</return>
<status status="NOT RUN" start="2026-05-29T00:44:23.541741" elapsed="0.000435"/>
</branch>
<status status="PASS" start="2026-05-29T00:44:23.541688" elapsed="0.000542"/>
</if>
<kw name="Open Connection" owner="SSHLibrary">
<arg>${controller}</arg>
<arg>port=${karaf_port}</arg>
<arg>prompt=${KARAF_PROMPT_LOGIN}</arg>
<arg>timeout=${timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-29T00:44:23.542633" elapsed="0.001062"/>
</kw>
<kw name="Login" owner="SSHLibrary">
<msg time="2026-05-29T00:44:23.544260" level="INFO">Logging into '10.30.171.215:8101' as 'karaf'.</msg>
<msg time="2026-05-29T00:44:23.545372" level="FAIL">NoValidConnectionsError: [Errno None] Unable to connect to port 8101 on 10.30.171.215</msg>
<arg>${KARAF_USER}</arg>
<arg>${KARAF_PASSWORD}</arg>
<arg>loglevel=${loglevel}</arg>
<doc>Logs into the SSH server with the given ``username`` and ``password``.</doc>
<status status="FAIL" start="2026-05-29T00:44:23.543872" elapsed="0.001961">NoValidConnectionsError: [Errno None] Unable to connect to port 8101 on 10.30.171.215</status>
</kw>
<kw name="Write" owner="SSHLibrary">
<arg>${cmd}</arg>
<doc>Writes the given ``text`` on the remote machine and appends a newline.</doc>
<status status="NOT RUN" start="2026-05-29T00:44:23.546012" elapsed="0.000022"/>
</kw>
<kw name="Read Until Regexp" owner="SSHLibrary">
<var>${output}</var>
<arg>${KARAF_PROMPT}</arg>
<doc>Consumes and returns the server output until a match to ``regexp`` is found.</doc>
<status status="NOT RUN" start="2026-05-29T00:44:23.546213" elapsed="0.000021"/>
</kw>
<kw name="Write Bare" owner="SSHLibrary">
<arg>logout\n</arg>
<doc>Writes the given ``text`` on the remote machine without appending a newline.</doc>
<status status="NOT RUN" start="2026-05-29T00:44:23.546404" elapsed="0.000021"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-05-29T00:44:23.546569" elapsed="0.000020"/>
</kw>
<kw name="Log" owner="BuiltIn">
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-29T00:44:23.546739" elapsed="0.000021"/>
</kw>
<return>
<value>${output}</value>
<status status="NOT RUN" start="2026-05-29T00:44:23.546801" elapsed="0.000017"/>
</return>
<arg>log:set ${log_level}</arg>
<doc>Will execute the given ${cmd} by ssh'ing to the karaf console running on 10.30.171.215
Note that this keyword will open&amp;close new SSH connection, without switching back to previously current session.</doc>
<status status="FAIL" start="2026-05-29T00:44:23.540845" elapsed="0.006069">NoValidConnectionsError: [Errno None] Unable to connect to port 8101 on 10.30.171.215</status>
</kw>
<msg time="2026-05-29T00:44:23.547020" level="FAIL">Keyword 'KarafKeywords.Issue Command On Karaf Console' failed after retrying 3 times. The last error was: NoValidConnectionsError: [Errno None] Unable to connect to port 8101 on 10.30.171.215</msg>
<arg>3x</arg>
<arg>1s</arg>
<arg>KarafKeywords.Issue Command On Karaf Console</arg>
<arg>log:set ${log_level}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="FAIL" start="2026-05-29T00:44:21.509621" elapsed="2.037531">Keyword 'KarafKeywords.Issue Command On Karaf Console' failed after retrying 3 times. The last error was: NoValidConnectionsError: [Errno None] Unable to connect to port 8101 on 10.30.171.215</status>
</kw>
<status status="FAIL" start="2026-05-29T00:44:21.507038" elapsed="2.040223">Keyword 'KarafKeywords.Issue Command On Karaf Console' failed after retrying 3 times. The last error was: NoValidConnectionsError: [Errno None] Unable to connect to port 8101 on 10.30.171.215</status>
</kw>
<test id="s1-s1-t1" name="Find Max Links" line="20">
<doc>Find max number of Links supported. Fully mesh topology starting from
${MIN_SWITCHES} switches till ${MAX_SWITCHES} switches will be attempted in steps of ${STEP_SWITCHES}</doc>
<status status="FAIL" start="2026-05-29T00:44:23.558781" elapsed="0.000724">Parent suite setup failed:
Keyword 'KarafKeywords.Issue Command On Karaf Console' failed after retrying 3 times. The last error was: NoValidConnectionsError: [Errno None] Unable to connect to port 8101 on 10.30.171.215</status>
</test>
<kw name="Workflow Teardown" owner="WorkflowsOpenFlow" type="TEARDOWN">
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-29T00:44:23.564622" level="WARN">Retrying (RetryAdapter(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError("HTTPConnection(host='10.30.171.215', port=8181): Failed to establish a new connection: [Errno 111] Connection refused")': /rests/data/opendaylight-inventory:nodes</msg>
<msg time="2026-05-29T00:44:23.766134" level="WARN">Retrying (RetryAdapter(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError("HTTPConnection(host='10.30.171.215', port=8181): Failed to establish a new connection: [Errno 111] Connection refused")': /rests/data/opendaylight-inventory:nodes</msg>
<msg time="2026-05-29T00:44:24.168952" level="WARN">Retrying (RetryAdapter(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError("HTTPConnection(host='10.30.171.215', port=8181): Failed to establish a new connection: [Errno 111] Connection refused")': /rests/data/opendaylight-inventory:nodes</msg>
<msg time="2026-05-29T00:44:24.172403" level="FAIL">ConnectionError: HTTPConnectionPool(host='10.30.171.215', port=8181): Max retries exceeded with url: /rests/data/opendaylight-inventory:nodes (Caused by NewConnectionError("HTTPConnection(host='10.30.171.215', port=8181): Failed to establish a new connection: [Errno 111] Connection refused"))</msg>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="FAIL" start="2026-05-29T00:44:23.561200" elapsed="0.619913">ConnectionError: HTTPConnectionPool(host='10.30.171.215', port=8181): Max retries exceeded with url: /rests/data/opendaylight-inventory:nodes (Caused by NewConnectionError("HTTPConnection(host='10.30.171.215', port=8181): Failed to establish a new connection: [Errno 111] Connection refused"))</status>
</kw>
<arg>RequestsLibrary.DELETE On Session</arg>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}</arg>
<arg>expected_status=anything</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-05-29T00:44:23.560674" elapsed="0.620542"/>
</kw>
<kw name="Clean Mininet System" owner="Utils">
<kw name="Run Command On Mininet" owner="Utils">
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Run Command On Remote System" owner="Utils">
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot; and &quot;${return_stderr}&quot;!=&quot;True&quot;">
<kw name="Fail" owner="BuiltIn">
<arg>At least one of {return_stdout} or {return_stderr} args should be set to True</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-29T00:44:24.184442" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-05-29T00:44:24.184098" elapsed="0.000409"/>
</branch>
<status status="PASS" start="2026-05-29T00:44:24.183800" elapsed="0.000737"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-29T00:44:24.184880" level="INFO">index=3
host=10.30.171.215
alias=None
port=8101
timeout=10 seconds
newline=

prompt=opendaylight-user
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-29T00:44:24.185003" level="INFO">${current_ssh_connection} = index=3
host=10.30.171.215
alias=None
port=8101
timeout=10 seconds
newline=

prompt=opendaylight-user
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_erro...</msg>
<var>${current_ssh_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-29T00:44:24.184715" elapsed="0.000319"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-29T00:44:24.185632" level="INFO">Attempting to execute command "sudo mn -c" on remote system "10.30.170.94" by user "jenkins" with keyfile pass "any" and prompt "&gt;" and password ""</msg>
<arg>Attempting to execute command "${cmd}" on remote system "${system}" by user "${user}" with keyfile pass "${keyfile_pass}" and prompt "${prompt}" and password "${password}"</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-29T00:44:24.185212" elapsed="0.000485"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-29T00:44:24.186359" level="INFO">${conn_id} = 4</msg>
<var>${conn_id}</var>
<arg>${system}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${prompt_timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-29T00:44:24.185928" elapsed="0.000459"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-29T00:44:24.187497" level="INFO">Length is 0.</msg>
<msg time="2026-05-29T00:44:24.187581" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-29T00:44:24.187022" elapsed="0.000585"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-29T00:44:24.187788" elapsed="0.000359"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-29T00:44:24.189042" level="INFO">Logging into '10.30.170.94:22' as 'jenkins'.</msg>
<msg time="2026-05-29T00:44:24.902288" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-153-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Fri May 29 00:44:24 UTC 2026

  System load:  0.06               Processes:             106
  Usage of /:   19.3% of 38.58GB   Users logged in:       0
  Memory usage: 4%                 IPv4 address for ens3: 10.30.170.94
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

9 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


[?2004h[jenkins@releng-12895-271-1-mininet-ovs-217-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-29T00:44:24.188714" elapsed="0.713726"/>
</kw>
<msg time="2026-05-29T00:44:24.902529" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-29T00:44:24.188325" elapsed="0.714301"/>
</kw>
<arg>${user}</arg>
<arg>${password}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-29T00:44:24.186619" elapsed="0.716130"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-29T00:44:24.903291" level="INFO">Executing command 'sudo mn -c'.</msg>
<msg time="2026-05-29T00:44:26.081591" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-29T00:44:26.081928" level="INFO">${stdout} = </msg>
<msg time="2026-05-29T00:44:26.081995" level="INFO">${stderr} = *** Removing excess controllers/ofprotocols/ofdatapaths/pings/noxes
killall controller ofprotocol ofdatapath ping nox_corelt-nox_core ovs-openflowd ovs-controllerovs-testcontroller udpbwtest mnexec iv...</msg>
<var>${stdout}</var>
<var>${stderr}</var>
<arg>${cmd}</arg>
<arg>return_stderr=True</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-29T00:44:24.903015" elapsed="1.179016"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-29T00:44:26.082423" elapsed="0.000500"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-29T00:44:26.083678" level="INFO">*** Removing excess controllers/ofprotocols/ofdatapaths/pings/noxes
killall controller ofprotocol ofdatapath ping nox_corelt-nox_core ovs-openflowd ovs-controllerovs-testcontroller udpbwtest mnexec ivs ryu-manager 2&gt; /dev/null
killall -9 controller ofprotocol ofdatapath ping nox_corelt-nox_core ovs-openflowd ovs-controllerovs-testcontroller udpbwtest mnexec ivs ryu-manager 2&gt; /dev/null
pkill -9 -f "sudo mnexec"
*** Removing junk from /tmp
rm -f /tmp/vconn* /tmp/vlogs* /tmp/*.out /tmp/*.log
*** Removing old X11 tunnels
*** Removing excess kernel datapaths
ps ax | egrep -o 'dp[0-9]+' | sed 's/dp/nl:/'
***  Removing OVS datapaths
ovs-vsctl --timeout=1 list-br
ovs-vsctl --timeout=1 list-br
*** Removing all links of the pattern foo-ethX
ip link show | egrep -o '([-_.[:alnum:]]+-eth[[:digit:]]+)'
ip link show
*** Killing stale mininet node processes
pkill -9 -f mininet:
*** Shutting down stale tunnels
pkill -9 -f Tunnel=Ethernet
pkill -9 -f .ssh/mn
rm -f ~/.ssh/mn/*
*** Cleanup complete.</msg>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-29T00:44:26.083262" elapsed="0.000496"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-29T00:44:26.084129" elapsed="0.000028"/>
</return>
<status status="NOT RUN" start="2026-05-29T00:44:26.083889" elapsed="0.000314"/>
</branch>
<status status="PASS" start="2026-05-29T00:44:26.083848" elapsed="0.000390"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-05-29T00:44:26.084497" elapsed="0.000051"/>
</return>
<status status="PASS" start="2026-05-29T00:44:26.084319" elapsed="0.000278"/>
</branch>
<status status="PASS" start="2026-05-29T00:44:26.084295" elapsed="0.000332"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-29T00:44:26.084674" elapsed="0.000026"/>
</return>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-29T00:44:26.089456" elapsed="0.000198"/>
</kw>
<msg time="2026-05-29T00:44:26.089718" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-29T00:44:26.088598" elapsed="0.001212"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="NOT RUN" start="2026-05-29T00:44:26.090039" elapsed="0.000053"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-05-29T00:44:26.090302" elapsed="0.000030"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-29T00:44:26.085176" elapsed="0.005246"/>
</kw>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Reduces the common work of running a command on a remote system to a single higher level
robot keyword, taking care to log in with a public key and. The command given is written and the return value
depends on the passed argument values of return_stdout (default: True) and return_stderr (default: False).
At least one should be True, or the keyword will exit and FAIL. If both are True, the resulting return value
will be a two element list containing both. Otherwise the resulting return value is a string.
No test conditions are checked.</doc>
<status status="PASS" start="2026-05-29T00:44:24.183286" elapsed="1.907268"/>
</kw>
<msg time="2026-05-29T00:44:26.090698" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>Run Command On Remote System</arg>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-29T00:44:24.182516" elapsed="1.908268"/>
</kw>
<arg>${system}</arg>
<arg>sudo mn -c</arg>
<doc>Call Run Comand On Remote System, but with default values suitable for Mininet machine.</doc>
<status status="PASS" start="2026-05-29T00:44:24.182008" elapsed="1.908888"/>
</kw>
<kw name="Run Command On Mininet" owner="Utils">
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Run Command On Remote System" owner="Utils">
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot; and &quot;${return_stderr}&quot;!=&quot;True&quot;">
<kw name="Fail" owner="BuiltIn">
<arg>At least one of {return_stdout} or {return_stderr} args should be set to True</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-29T00:44:26.093907" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-29T00:44:26.093496" elapsed="0.000489"/>
</branch>
<status status="PASS" start="2026-05-29T00:44:26.093467" elapsed="0.000552"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-29T00:44:26.094432" level="INFO">index=3
host=10.30.171.215
alias=None
port=8101
timeout=10 seconds
newline=

prompt=opendaylight-user
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-29T00:44:26.094584" level="INFO">${current_ssh_connection} = index=3
host=10.30.171.215
alias=None
port=8101
timeout=10 seconds
newline=

prompt=opendaylight-user
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_erro...</msg>
<var>${current_ssh_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-29T00:44:26.094262" elapsed="0.000358"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-29T00:44:26.095356" level="INFO">Attempting to execute command "sudo ps -elf | egrep 'usr/local/bin/mn' | egrep python | awk '{print "sudo kill -9",$4}' | sh" on remote system "10.30.170.94" by user "jenkins" with keyfile pass "any" and prompt "&gt;" and password ""</msg>
<arg>Attempting to execute command "${cmd}" on remote system "${system}" by user "${user}" with keyfile pass "${keyfile_pass}" and prompt "${prompt}" and password "${password}"</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-29T00:44:26.094836" elapsed="0.000585"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-29T00:44:26.096238" level="INFO">${conn_id} = 5</msg>
<var>${conn_id}</var>
<arg>${system}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${prompt_timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-29T00:44:26.095641" elapsed="0.000634"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-29T00:44:26.097509" level="INFO">Length is 0.</msg>
<msg time="2026-05-29T00:44:26.097624" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-29T00:44:26.097103" elapsed="0.000556"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-29T00:44:26.097889" elapsed="0.000494"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-29T00:44:26.099618" level="INFO">Logging into '10.30.170.94:22' as 'jenkins'.</msg>
<msg time="2026-05-29T00:44:26.473811" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-153-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Fri May 29 00:44:24 UTC 2026

  System load:  0.06               Processes:             106
  Usage of /:   19.3% of 38.58GB   Users logged in:       0
  Memory usage: 4%                 IPv4 address for ens3: 10.30.170.94
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

9 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Fri May 29 00:44:24 2026 from 10.30.171.72
[?2004h[jenkins@releng-12895-271-1-mininet-ovs-217-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-29T00:44:26.099180" elapsed="0.374778"/>
</kw>
<msg time="2026-05-29T00:44:26.474043" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-29T00:44:26.098636" elapsed="0.375525"/>
</kw>
<arg>${user}</arg>
<arg>${password}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-29T00:44:26.096586" elapsed="0.377684"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-29T00:44:26.475059" level="INFO">Executing command 'sudo ps -elf | egrep 'usr/local/bin/mn' | egrep python | awk '{print "sudo kill -9",$4}' | sh'.</msg>
<msg time="2026-05-29T00:44:26.507234" level="INFO">Command exited with return code -1.</msg>
<msg time="2026-05-29T00:44:26.507552" level="INFO">${stdout} = </msg>
<msg time="2026-05-29T00:44:26.507652" level="INFO">${stderr} = </msg>
<var>${stdout}</var>
<var>${stderr}</var>
<arg>${cmd}</arg>
<arg>return_stderr=True</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-29T00:44:26.474527" elapsed="0.033176"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-29T00:44:26.508183" elapsed="0.000526"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-29T00:44:26.509845" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-29T00:44:26.509220" elapsed="0.000718"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-29T00:44:26.510464" elapsed="0.000037"/>
</return>
<status status="NOT RUN" start="2026-05-29T00:44:26.510163" elapsed="0.000407"/>
</branch>
<status status="PASS" start="2026-05-29T00:44:26.510099" elapsed="0.000526"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-05-29T00:44:26.510983" elapsed="0.000066"/>
</return>
<status status="PASS" start="2026-05-29T00:44:26.510746" elapsed="0.000434"/>
</branch>
<status status="PASS" start="2026-05-29T00:44:26.510713" elapsed="0.000523"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-29T00:44:26.511314" elapsed="0.000127"/>
</return>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-29T00:44:26.517624" elapsed="0.000149"/>
</kw>
<msg time="2026-05-29T00:44:26.517819" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-29T00:44:26.516922" elapsed="0.000962"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="NOT RUN" start="2026-05-29T00:44:26.518047" elapsed="0.000037"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-05-29T00:44:26.518232" elapsed="0.000021"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-29T00:44:26.512165" elapsed="0.006152"/>
</kw>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Reduces the common work of running a command on a remote system to a single higher level
robot keyword, taking care to log in with a public key and. The command given is written and the return value
depends on the passed argument values of return_stdout (default: True) and return_stderr (default: False).
At least one should be True, or the keyword will exit and FAIL. If both are True, the resulting return value
will be a two element list containing both. Otherwise the resulting return value is a string.
No test conditions are checked.</doc>
<status status="PASS" start="2026-05-29T00:44:26.092671" elapsed="0.425739"/>
</kw>
<msg time="2026-05-29T00:44:26.518464" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>Run Command On Remote System</arg>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-29T00:44:26.091800" elapsed="0.426724"/>
</kw>
<arg>${system}</arg>
<arg>sudo ps -elf | egrep 'usr/local/bin/mn' | egrep python | awk '{print "sudo kill -9",$4}' | sh</arg>
<doc>Call Run Comand On Remote System, but with default values suitable for Mininet machine.</doc>
<status status="PASS" start="2026-05-29T00:44:26.091170" elapsed="0.427435"/>
</kw>
<status status="PASS" start="2026-05-29T00:44:24.181553" elapsed="2.337108"/>
</kw>
<kw name="Delete All Sessions" owner="RequestsLibrary">
<msg time="2026-05-29T00:44:26.518888" level="INFO">Deleting All Sessions</msg>
<doc>Removes all the session objects</doc>
<status status="PASS" start="2026-05-29T00:44:26.518812" elapsed="0.000208"/>
</kw>
<doc>Cleanup when workflow is interrupt</doc>
<status status="PASS" start="2026-05-29T00:44:23.560340" elapsed="2.958748"/>
</kw>
<doc>Test suite for finding out max number of Links</doc>
<status status="FAIL" start="2026-05-29T00:44:20.766254" elapsed="5.752869">Suite setup failed:
Keyword 'KarafKeywords.Issue Command On Karaf Console' failed after retrying 3 times. The last error was: NoValidConnectionsError: [Errno None] Unable to connect to port 8101 on 10.30.171.215</status>
</suite>
<status status="FAIL" start="2026-05-29T00:44:20.719442" elapsed="5.800590"/>
</suite>
<statistics>
<total>
<stat pass="0" fail="1" skip="0">All Tests</stat>
</total>
<tag>
</tag>
<suite>
<stat name="openflowplugin-scale-link.txt" id="s1" pass="0" fail="1" skip="0">openflowplugin-scale-link.txt</stat>
<stat name="Finding Max Links" id="s1-s1" pass="0" fail="1" skip="0">openflowplugin-scale-link.txt.Finding Max Links</stat>
</suite>
</statistics>
<errors>
<msg time="2026-05-29T00:44:23.564622" level="WARN">Retrying (RetryAdapter(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError("HTTPConnection(host='10.30.171.215', port=8181): Failed to establish a new connection: [Errno 111] Connection refused")': /rests/data/opendaylight-inventory:nodes</msg>
<msg time="2026-05-29T00:44:23.766134" level="WARN">Retrying (RetryAdapter(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError("HTTPConnection(host='10.30.171.215', port=8181): Failed to establish a new connection: [Errno 111] Connection refused")': /rests/data/opendaylight-inventory:nodes</msg>
<msg time="2026-05-29T00:44:24.168952" level="WARN">Retrying (RetryAdapter(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError("HTTPConnection(host='10.30.171.215', port=8181): Failed to establish a new connection: [Errno 111] Connection refused")': /rests/data/opendaylight-inventory:nodes</msg>
</errors>
</robot>
