<?xml version="1.0" encoding="UTF-8"?>
<robot generator="Robot 7.4.2 (Python 3.11.10 on linux)" generated="2026-05-02T03:14:39.731843" 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-02T03:14:40.520887" level="INFO">Creating Session using : alias=session, url=http://:8181, headers={'Content-Type': 'application/xml'},                     cookies={}, auth=&lt;requests.auth.HTTPBasicAuth object at 0x7aaf7570c950&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-02T03:14:40.520349" elapsed="0.000906"/>
</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-02T03:14:40.528409" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-02T03:14:40.528252" elapsed="0.000218"/>
</branch>
<status status="PASS" start="2026-05-02T03:14:40.528221" elapsed="0.000276"/>
</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-02T03:14:40.528667" elapsed="0.000557"/>
</kw>
<kw name="Login" owner="SSHLibrary">
<msg time="2026-05-02T03:14:40.529717" level="INFO">Logging into ':8101' as 'karaf'.</msg>
<msg time="2026-05-02T03:14:40.530284" level="FAIL">OSError: [Errno 16] Device or resource busy</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-02T03:14:40.529422" elapsed="0.003402">OSError: [Errno 16] Device or resource busy</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-02T03:14:40.533087" elapsed="0.000027"/>
</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-02T03:14:40.533289" elapsed="0.000027"/>
</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-02T03:14:40.533478" elapsed="0.000022"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-05-02T03:14:40.533655" elapsed="0.000022"/>
</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-02T03:14:40.533831" elapsed="0.000021"/>
</kw>
<return>
<value>${output}</value>
<status status="NOT RUN" start="2026-05-02T03:14:40.533897" elapsed="0.000019"/>
</return>
<arg>log:set ${log_level}</arg>
<doc>Will execute the given ${cmd} by ssh'ing to the karaf console running on 
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-02T03:14:40.527858" elapsed="0.006185">OSError: [Errno 16] Device or resource busy</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-02T03:14:41.543866" elapsed="0.000053"/>
</return>
<status status="NOT RUN" start="2026-05-02T03:14:41.543525" elapsed="0.000589"/>
</branch>
<status status="PASS" start="2026-05-02T03:14:41.543464" elapsed="0.000715"/>
</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-02T03:14:41.544605" elapsed="0.000828"/>
</kw>
<kw name="Login" owner="SSHLibrary">
<msg time="2026-05-02T03:14:41.545905" level="INFO">Logging into ':8101' as 'karaf'.</msg>
<msg time="2026-05-02T03:14:41.546186" level="FAIL">OSError: [Errno 16] Device or resource busy</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-02T03:14:41.545615" elapsed="0.001084">OSError: [Errno 16] Device or resource busy</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-02T03:14:41.546886" elapsed="0.000023"/>
</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-02T03:14:41.547086" 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-02T03:14:41.547260" elapsed="0.000021"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-05-02T03:14:41.547427" 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-02T03:14:41.547603" elapsed="0.000021"/>
</kw>
<return>
<value>${output}</value>
<status status="NOT RUN" start="2026-05-02T03:14:41.547665" 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 
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-02T03:14:41.542521" elapsed="0.005267">OSError: [Errno 16] Device or resource busy</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-02T03:14:42.555523" elapsed="0.000025"/>
</return>
<status status="NOT RUN" start="2026-05-02T03:14:42.555327" elapsed="0.000279"/>
</branch>
<status status="PASS" start="2026-05-02T03:14:42.555289" elapsed="0.000351"/>
</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-02T03:14:42.555891" elapsed="0.000745"/>
</kw>
<kw name="Login" owner="SSHLibrary">
<msg time="2026-05-02T03:14:42.557305" level="INFO">Logging into ':8101' as 'karaf'.</msg>
<msg time="2026-05-02T03:14:42.557644" level="FAIL">OSError: [Errno 16] Device or resource busy</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-02T03:14:42.556884" elapsed="0.001457">OSError: [Errno 16] Device or resource busy</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-02T03:14:42.558693" elapsed="0.000033"/>
</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-02T03:14:42.558965" elapsed="0.000031"/>
</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-02T03:14:42.559239" elapsed="0.000038"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-05-02T03:14:42.559482" elapsed="0.000029"/>
</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-02T03:14:42.559723" elapsed="0.000029"/>
</kw>
<return>
<value>${output}</value>
<status status="NOT RUN" start="2026-05-02T03:14:42.559810" elapsed="0.000025"/>
</return>
<arg>log:set ${log_level}</arg>
<doc>Will execute the given ${cmd} by ssh'ing to the karaf console running on 
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-02T03:14:42.554674" elapsed="0.005316">OSError: [Errno 16] Device or resource busy</status>
</kw>
<msg time="2026-05-02T03:14:42.560149" level="FAIL">Keyword 'KarafKeywords.Issue Command On Karaf Console' failed after retrying 3 times. The last error was: OSError: [Errno 16] Device or resource busy</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-02T03:14:40.522832" elapsed="2.037466">Keyword 'KarafKeywords.Issue Command On Karaf Console' failed after retrying 3 times. The last error was: OSError: [Errno 16] Device or resource busy</status>
</kw>
<status status="FAIL" start="2026-05-02T03:14:40.519746" elapsed="2.040704">Keyword 'KarafKeywords.Issue Command On Karaf Console' failed after retrying 3 times. The last error was: OSError: [Errno 16] Device or resource busy</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-02T03:14:42.573677" elapsed="0.000786">Parent suite setup failed:
Keyword 'KarafKeywords.Issue Command On Karaf Console' failed after retrying 3 times. The last error was: OSError: [Errno 16] Device or resource busy</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-02T03:14:42.576901" level="FAIL">InvalidURL: Invalid URL 'http://:8181/rests/data/opendaylight-inventory:nodes': No host supplied</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-02T03:14:42.576261" elapsed="0.002060">InvalidURL: Invalid URL 'http://:8181/rests/data/opendaylight-inventory:nodes': No host supplied</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-02T03:14:42.575688" elapsed="0.002716"/>
</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-02T03:14:42.581301" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-05-02T03:14:42.580863" elapsed="0.000510"/>
</branch>
<status status="PASS" start="2026-05-02T03:14:42.580820" elapsed="0.000593"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-02T03:14:42.581823" level="INFO">index=3
host=
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-02T03:14:42.581970" level="INFO">${current_ssh_connection} = index=3
host=
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>
<var>${current_ssh_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-02T03:14:42.581635" elapsed="0.000374"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-02T03:14:42.582600" level="INFO">Attempting to execute command "sudo mn -c" on remote system "" 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-02T03:14:42.582181" elapsed="0.000477"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-02T03:14:42.583274" 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-02T03:14:42.582828" elapsed="0.000473"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-02T03:14:42.584741" level="INFO">Length is 0.</msg>
<msg time="2026-05-02T03:14:42.584842" 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-02T03:14:42.583985" elapsed="0.000886"/>
</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-02T03:14:42.585069" elapsed="0.000368"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-02T03:14:42.586398" level="INFO">Logging into ':22' as 'jenkins'.</msg>
<msg time="2026-05-02T03:14:42.586718" level="FAIL">OSError: [Errno 16] Device or resource busy</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="FAIL" start="2026-05-02T03:14:42.586038" elapsed="0.001315">OSError: [Errno 16] Device or resource busy</status>
</kw>
<msg time="2026-05-02T03:14:42.587426" 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="FAIL" start="2026-05-02T03:14:42.585636" elapsed="0.001863"/>
</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="FAIL" start="2026-05-02T03:14:42.583545" elapsed="0.004150">OSError: [Errno 16] Device or resource busy</status>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-02T03:14:42.588076" level="INFO">Executing command 'sudo mn -c'.</msg>
<msg time="2026-05-02T03:14:42.588220" level="INFO">${stdout} = None</msg>
<msg time="2026-05-02T03:14:42.588267" level="INFO">${stderr} = None</msg>
<msg time="2026-05-02T03:14:42.588306" level="FAIL">Connection not open</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="FAIL" start="2026-05-02T03:14:42.587882" elapsed="0.000725">Connection not open</status>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-02T03:14:42.588792" elapsed="0.000107"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-02T03:14:42.589380" level="INFO">None</msg>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-02T03:14:42.589120" elapsed="0.000305"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-02T03:14:42.589630" elapsed="0.000018"/>
</return>
<status status="NOT RUN" start="2026-05-02T03:14:42.589504" elapsed="0.000176"/>
</branch>
<status status="PASS" start="2026-05-02T03:14:42.589480" elapsed="0.000223"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-05-02T03:14:42.589867" elapsed="0.000029"/>
</return>
<status status="PASS" start="2026-05-02T03:14:42.589757" elapsed="0.000173"/>
</branch>
<status status="PASS" start="2026-05-02T03:14:42.589741" elapsed="0.000231"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-02T03:14:42.590008" elapsed="0.000015"/>
</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-02T03:14:42.593155" elapsed="0.000141"/>
</kw>
<msg time="2026-05-02T03:14:42.593342" 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-02T03:14:42.592647" elapsed="0.000762"/>
</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-02T03:14:42.593573" elapsed="0.000022"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-05-02T03:14:42.593741" elapsed="0.000020"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-02T03:14:42.590356" elapsed="0.003469"/>
</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="FAIL" start="2026-05-02T03:14:42.580300" elapsed="0.013674">Several failures occurred:

1) OSError: [Errno 16] Device or resource busy

2) Connection not open</status>
</kw>
<msg time="2026-05-02T03:14:42.594032" 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="FAIL" start="2026-05-02T03:14:42.579608" elapsed="0.014481"/>
</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="FAIL" start="2026-05-02T03:14:42.579081" elapsed="0.015124">Several failures occurred:

1) OSError: [Errno 16] Device or resource busy

2) Connection not open</status>
</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-02T03:14:42.596312" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-02T03:14:42.596015" elapsed="0.000354"/>
</branch>
<status status="PASS" start="2026-05-02T03:14:42.595989" elapsed="0.000406"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-02T03:14:42.596675" level="INFO">index=3
host=
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-02T03:14:42.596782" level="INFO">${current_ssh_connection} = index=3
host=
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>
<var>${current_ssh_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-02T03:14:42.596553" elapsed="0.000255"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-02T03:14:42.597362" 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 "" 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-02T03:14:42.596979" elapsed="0.000430"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-02T03:14:42.597966" 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-02T03:14:42.597571" elapsed="0.000423"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-02T03:14:42.599058" level="INFO">Length is 0.</msg>
<msg time="2026-05-02T03:14:42.599213" 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-02T03:14:42.598725" elapsed="0.000516"/>
</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-02T03:14:42.599414" elapsed="0.000351"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-02T03:14:42.600976" level="INFO">Logging into ':22' as 'jenkins'.</msg>
<msg time="2026-05-02T03:14:42.601336" level="FAIL">OSError: [Errno 16] Device or resource busy</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="FAIL" start="2026-05-02T03:14:42.600505" elapsed="0.001420">OSError: [Errno 16] Device or resource busy</status>
</kw>
<msg time="2026-05-02T03:14:42.602030" 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="FAIL" start="2026-05-02T03:14:42.599993" elapsed="0.002125"/>
</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="FAIL" start="2026-05-02T03:14:42.598223" elapsed="0.004070">OSError: [Errno 16] Device or resource busy</status>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-02T03:14:42.602859" 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-02T03:14:42.603103" level="INFO">${stdout} = None</msg>
<msg time="2026-05-02T03:14:42.603180" level="INFO">${stderr} = None</msg>
<msg time="2026-05-02T03:14:42.603247" level="FAIL">Connection not open</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="FAIL" start="2026-05-02T03:14:42.602610" elapsed="0.001149">Connection not open</status>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-02T03:14:42.604113" elapsed="0.000179"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-02T03:14:42.605089" level="INFO">None</msg>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-02T03:14:42.604627" elapsed="0.000543"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-02T03:14:42.605503" elapsed="0.000029"/>
</return>
<status status="NOT RUN" start="2026-05-02T03:14:42.605300" elapsed="0.000286"/>
</branch>
<status status="PASS" start="2026-05-02T03:14:42.605260" elapsed="0.000367"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-05-02T03:14:42.605913" elapsed="0.000062"/>
</return>
<status status="PASS" start="2026-05-02T03:14:42.605721" elapsed="0.000305"/>
</branch>
<status status="PASS" start="2026-05-02T03:14:42.605694" elapsed="0.000365"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-02T03:14:42.606120" 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-02T03:14:42.610305" elapsed="0.000150"/>
</kw>
<msg time="2026-05-02T03:14:42.610501" 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-02T03:14:42.609753" elapsed="0.000817"/>
</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-02T03:14:42.610751" elapsed="0.000024"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-05-02T03:14:42.610924" elapsed="0.000052"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-02T03:14:42.606685" elapsed="0.004360"/>
</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="FAIL" start="2026-05-02T03:14:42.595507" elapsed="0.015688">Several failures occurred:

1) OSError: [Errno 16] Device or resource busy

2) Connection not open</status>
</kw>
<msg time="2026-05-02T03:14:42.611253" 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="FAIL" start="2026-05-02T03:14:42.594862" elapsed="0.016450"/>
</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="FAIL" start="2026-05-02T03:14:42.594395" elapsed="0.017039">Several failures occurred:

1) OSError: [Errno 16] Device or resource busy

2) Connection not open</status>
</kw>
<status status="FAIL" start="2026-05-02T03:14:42.578661" elapsed="0.032903">Several failures occurred:

1) Several failures occurred:

1) OSError: [Errno 16] Device or resource busy

2) Connection not open

2) Several failures occurred:

1) OSError: [Errno 16] Device or resource busy

2) Connection not open</status>
</kw>
<kw name="Delete All Sessions" owner="RequestsLibrary">
<msg time="2026-05-02T03:14:42.611836" level="INFO">Deleting All Sessions</msg>
<doc>Removes all the session objects</doc>
<status status="PASS" start="2026-05-02T03:14:42.611751" elapsed="0.000174"/>
</kw>
<doc>Cleanup when workflow is interrupt</doc>
<status status="FAIL" start="2026-05-02T03:14:42.575287" elapsed="0.036779">Several failures occurred:

1) Several failures occurred:

1) OSError: [Errno 16] Device or resource busy

2) Connection not open

2) Several failures occurred:

1) OSError: [Errno 16] Device or resource busy

2) Connection not open</status>
</kw>
<doc>Test suite for finding out max number of Links</doc>
<status status="FAIL" start="2026-05-02T03:14:39.772539" elapsed="2.839603">Suite setup failed:
Keyword 'KarafKeywords.Issue Command On Karaf Console' failed after retrying 3 times. The last error was: OSError: [Errno 16] Device or resource busy

Also suite teardown failed:
Several failures occurred:

1) Several failures occurred:

1) OSError: [Errno 16] Device or resource busy

2) Connection not open

2) Several failures occurred:

1) OSError: [Errno 16] Device or resource busy

2) Connection not open</status>
</suite>
<status status="FAIL" start="2026-05-02T03:14:39.733367" elapsed="2.879756"/>
</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>
</errors>
</robot>
