<?xml version="1.0" encoding="UTF-8"?>
<robot generator="Robot 7.4.2 (Python 3.11.10 on linux)" generated="2026-08-19T01:08:49.089005" rpa="false" schemaversion="5">
<suite id="s1" name="openflowplugin-scale-link.txt" source="/w/workspace/openflowplugin-csit-1node-scale-link-only-manganese/test/csit/suites/openflowplugin/Maximum_Links">
<suite id="s1-s1" name="Finding Max Links" source="/w/workspace/openflowplugin-csit-1node-scale-link-only-manganese/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-08-19T01:08:49.827942" level="INFO">Creating Session using : alias=session, url=http://:8181, headers={'Content-Type': 'application/xml'},                     cookies={}, auth=&lt;requests.auth.HTTPBasicAuth object at 0x7b4cee258c90&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-08-19T01:08:49.827542" elapsed="0.000654"/>
</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-08-19T01:08:49.833795" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-19T01:08:49.833655" elapsed="0.000203"/>
</branch>
<status status="PASS" start="2026-08-19T01:08:49.833624" elapsed="0.000261"/>
</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-08-19T01:08:49.834105" elapsed="0.000503"/>
</kw>
<kw name="Login" owner="SSHLibrary">
<msg time="2026-08-19T01:08:49.835073" level="INFO">Logging into ':8101' as 'karaf'.</msg>
<msg time="2026-08-19T01:08:49.835593" 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-08-19T01:08:49.834794" elapsed="0.007644">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-08-19T01:08:49.842925" elapsed="0.000058"/>
</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-08-19T01:08:49.843396" elapsed="0.000062"/>
</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-08-19T01:08:49.843828" elapsed="0.000052"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-08-19T01:08:49.844252" elapsed="0.000050"/>
</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-08-19T01:08:49.844636" elapsed="0.000047"/>
</kw>
<return>
<value>${output}</value>
<status status="NOT RUN" start="2026-08-19T01:08:49.844816" elapsed="0.000057"/>
</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-08-19T01:08:49.833284" elapsed="0.011865">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-08-19T01:08:50.854509" elapsed="0.000037"/>
</return>
<status status="NOT RUN" start="2026-08-19T01:08:50.854215" elapsed="0.000424"/>
</branch>
<status status="PASS" start="2026-08-19T01:08:50.854156" elapsed="0.000537"/>
</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-08-19T01:08:50.854907" elapsed="0.000522"/>
</kw>
<kw name="Login" owner="SSHLibrary">
<msg time="2026-08-19T01:08:50.855889" level="INFO">Logging into ':8101' as 'karaf'.</msg>
<msg time="2026-08-19T01:08:50.856162" 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-08-19T01:08:50.855602" elapsed="0.001067">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-08-19T01:08:50.856848" 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-08-19T01:08:50.857021" 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-08-19T01:08:50.857202" elapsed="0.000021"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-08-19T01:08:50.857363" elapsed="0.000021"/>
</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-08-19T01:08:50.857533" elapsed="0.000020"/>
</kw>
<return>
<value>${output}</value>
<status status="NOT RUN" start="2026-08-19T01:08:50.857593" 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-08-19T01:08:50.853231" elapsed="0.004484">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-08-19T01:08:51.866819" elapsed="0.000019"/>
</return>
<status status="NOT RUN" start="2026-08-19T01:08:51.866572" elapsed="0.000310"/>
</branch>
<status status="PASS" start="2026-08-19T01:08:51.866519" elapsed="0.000388"/>
</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-08-19T01:08:51.867071" elapsed="0.000513"/>
</kw>
<kw name="Login" owner="SSHLibrary">
<msg time="2026-08-19T01:08:51.868038" level="INFO">Logging into ':8101' as 'karaf'.</msg>
<msg time="2026-08-19T01:08:51.868302" 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-08-19T01:08:51.867758" elapsed="0.001040">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-08-19T01:08:51.869057" elapsed="0.000024"/>
</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-08-19T01:08:51.869249" 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-08-19T01:08:51.869417" elapsed="0.000020"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-08-19T01:08:51.869578" 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-08-19T01:08:51.869747" elapsed="0.000021"/>
</kw>
<return>
<value>${output}</value>
<status status="NOT RUN" start="2026-08-19T01:08:51.869809" 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 
Note that this keyword will open&amp;close new SSH connection, without switching back to previously current session.</doc>
<status status="FAIL" start="2026-08-19T01:08:51.865639" elapsed="0.004284">OSError: [Errno 16] Device or resource busy</status>
</kw>
<msg time="2026-08-19T01:08:51.870026" 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-08-19T01:08:49.829319" elapsed="2.040828">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-08-19T01:08:49.827134" elapsed="2.043135">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-08-19T01:08:51.881835" elapsed="0.000887">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-08-19T01:08:51.885582" 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-08-19T01:08:51.884939" elapsed="0.001849">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-08-19T01:08:51.884027" elapsed="0.002840"/>
</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-08-19T01:08:51.889389" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-19T01:08:51.889068" elapsed="0.000379"/>
</branch>
<status status="PASS" start="2026-08-19T01:08:51.889047" elapsed="0.000427"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-08-19T01:08:51.889792" 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-08-19T01:08:51.889910" 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-08-19T01:08:51.889651" elapsed="0.000286"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-19T01:08:51.890534" 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-08-19T01:08:51.890089" elapsed="0.000494"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-08-19T01:08:51.891146" 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-08-19T01:08:51.890747" elapsed="0.000426"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-19T01:08:51.892342" level="INFO">Length is 0.</msg>
<msg time="2026-08-19T01:08:51.892428" 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-08-19T01:08:51.891745" elapsed="0.000707"/>
</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-08-19T01:08:51.892618" elapsed="0.000336"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-08-19T01:08:51.893832" level="INFO">Logging into ':22' as 'jenkins'.</msg>
<msg time="2026-08-19T01:08:51.894084" 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-08-19T01:08:51.893515" elapsed="0.001031">OSError: [Errno 16] Device or resource busy</status>
</kw>
<msg time="2026-08-19T01:08:51.894604" 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-08-19T01:08:51.893140" elapsed="0.001537"/>
</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-08-19T01:08:51.891390" elapsed="0.003458">OSError: [Errno 16] Device or resource busy</status>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-08-19T01:08:51.895209" level="INFO">Executing command 'sudo mn -c'.</msg>
<msg time="2026-08-19T01:08:51.895350" level="INFO">${stdout} = None</msg>
<msg time="2026-08-19T01:08:51.895395" level="INFO">${stderr} = None</msg>
<msg time="2026-08-19T01:08:51.895433" 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-08-19T01:08:51.895025" elapsed="0.000699">Connection not open</status>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-19T01:08:51.895899" elapsed="0.000110"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-19T01:08:51.896459" level="INFO">None</msg>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-19T01:08:51.896210" elapsed="0.000292"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-19T01:08:51.896691" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-08-19T01:08:51.896575" elapsed="0.000164"/>
</branch>
<status status="PASS" start="2026-08-19T01:08:51.896553" elapsed="0.000211"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-08-19T01:08:51.896943" elapsed="0.000029"/>
</return>
<status status="PASS" start="2026-08-19T01:08:51.896819" elapsed="0.000193"/>
</branch>
<status status="PASS" start="2026-08-19T01:08:51.896804" elapsed="0.000234"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-19T01:08:51.897074" elapsed="0.000014"/>
</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-08-19T01:08:51.900150" elapsed="0.000140"/>
</kw>
<msg time="2026-08-19T01:08:51.900334" 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-08-19T01:08:51.899654" elapsed="0.000739"/>
</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-08-19T01:08:51.900549" elapsed="0.000022"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-08-19T01:08:51.900709" 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-08-19T01:08:51.897440" elapsed="0.003352"/>
</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-08-19T01:08:51.888564" elapsed="0.012356">Several failures occurred:

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

2) Connection not open</status>
</kw>
<msg time="2026-08-19T01:08:51.900975" 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-08-19T01:08:51.887919" elapsed="0.013112"/>
</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-08-19T01:08:51.887456" elapsed="0.013711">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-08-19T01:08:51.903428" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-08-19T01:08:51.903013" elapsed="0.000480"/>
</branch>
<status status="PASS" start="2026-08-19T01:08:51.902993" elapsed="0.000525"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-08-19T01:08:51.903809" 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-08-19T01:08:51.903917" 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-08-19T01:08:51.903674" elapsed="0.000270"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-19T01:08:51.904508" 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-08-19T01:08:51.904125" elapsed="0.000430"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-08-19T01:08:51.905068" 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-08-19T01:08:51.904709" elapsed="0.000386"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-19T01:08:51.906077" level="INFO">Length is 0.</msg>
<msg time="2026-08-19T01:08:51.906244" 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-08-19T01:08:51.905815" elapsed="0.000455"/>
</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-08-19T01:08:51.906434" elapsed="0.000334"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-08-19T01:08:51.907635" level="INFO">Logging into ':22' as 'jenkins'.</msg>
<msg time="2026-08-19T01:08:51.907870" 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-08-19T01:08:51.907311" elapsed="0.000986">OSError: [Errno 16] Device or resource busy</status>
</kw>
<msg time="2026-08-19T01:08:51.908353" 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-08-19T01:08:51.906939" elapsed="0.001475"/>
</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-08-19T01:08:51.905329" elapsed="0.003203">OSError: [Errno 16] Device or resource busy</status>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-08-19T01:08:51.908866" 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-08-19T01:08:51.908993" level="INFO">${stdout} = None</msg>
<msg time="2026-08-19T01:08:51.909044" level="INFO">${stderr} = None</msg>
<msg time="2026-08-19T01:08:51.909082" 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-08-19T01:08:51.908703" elapsed="0.000669">Connection not open</status>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-19T01:08:51.909545" elapsed="0.000098"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-19T01:08:51.910063" level="INFO">None</msg>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-19T01:08:51.909819" elapsed="0.000287"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-19T01:08:51.910338" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-19T01:08:51.910221" elapsed="0.000163"/>
</branch>
<status status="PASS" start="2026-08-19T01:08:51.910198" elapsed="0.000210"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-08-19T01:08:51.910570" elapsed="0.000026"/>
</return>
<status status="PASS" start="2026-08-19T01:08:51.910462" elapsed="0.000166"/>
</branch>
<status status="PASS" start="2026-08-19T01:08:51.910447" elapsed="0.000204"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-19T01:08:51.910685" elapsed="0.000014"/>
</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-08-19T01:08:51.913757" elapsed="0.000141"/>
</kw>
<msg time="2026-08-19T01:08:51.913941" 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-08-19T01:08:51.913230" elapsed="0.000771"/>
</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-08-19T01:08:51.914198" elapsed="0.000023"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-08-19T01:08:51.914363" 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-08-19T01:08:51.911015" elapsed="0.003428"/>
</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-08-19T01:08:51.902499" elapsed="0.012186">Several failures occurred:

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

2) Connection not open</status>
</kw>
<msg time="2026-08-19T01:08:51.914745" 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-08-19T01:08:51.901797" elapsed="0.013006"/>
</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-08-19T01:08:51.901353" elapsed="0.013562">Several failures occurred:

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

2) Connection not open</status>
</kw>
<status status="FAIL" start="2026-08-19T01:08:51.887090" elapsed="0.027939">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-08-19T01:08:51.915277" level="INFO">Deleting All Sessions</msg>
<doc>Removes all the session objects</doc>
<status status="PASS" start="2026-08-19T01:08:51.915202" elapsed="0.000151"/>
</kw>
<doc>Cleanup when workflow is interrupt</doc>
<status status="FAIL" start="2026-08-19T01:08:51.883705" elapsed="0.031754">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-08-19T01:08:49.130090" elapsed="2.785434">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-08-19T01:08:49.090561" elapsed="2.826332"/>
</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>
