Run Docker Keystone
[Documentation] Run Keystone in a docker container hosted in the SYSTEM TOOL server and define "CSC_user" and "CSC_user_no_admin" users, the former with "admin" role and the latter with "user" role
${output} SSHLibrary.Open_Connection ${TOOLS_SYSTEM_IP} timeout=20s
- Utils.Flexible_Controller_Login
+ SSHKeywords.Flexible_Controller_Login
SSHLibrary.Put File ${CURDIR}/../../suites/aaa/keystone/start_keystone.sh
SSHLibrary.Execute Command ./start_keystone.sh
Wait Until Keyword Succeeds 10x 15 Check Keystone Log File For String GET
Resource ClusterManagement.robot
Resource ../variables/daexim/DaeximVariables.robot
Resource ../variables/Variables.robot
-Resource Utils.robot
+Resource SSHKeywords.robot
*** Keywords ***
Verify Export Files
[Arguments] ${system}=${ODL_SYSTEM_IP} ${prompt}=${DEFAULT_LINUX_PROMPT} ${prompt_timeout}=${DEFAULT_TIMEOUT} ${user}=${ODL_SYSTEM_USER} ${password}=${ODL_SYSTEM_PASSWORD}
[Documentation] Returns the connection of any host. Defaults to controller
${conn_id} SSHLibrary.Open Connection ${system} prompt=${prompt} timeout=${prompt_timeout}
- Utils.Flexible SSH Login ${user} ${password}
+ SSHKeywords.Flexible SSH Login ${user} ${password}
[Return] ${conn_id}
Cleanup Directory
Library ./UtilLibrary.py
Resource KarafKeywords.robot
Resource OpenStackOperations.robot
+Resource SSHKeywords.robot
Variables ../variables/Variables.py
*** Variables ***
Set Suite Variable ${devstack_conn_id}
Set Suite Variable ${source_pwd}
Log ${devstack_conn_id}
- Utils.Flexible SSH Login ${OS_USER} ${DEVSTACK_SYSTEM_PASSWORD}
+ SSHKeywords.Flexible SSH Login ${OS_USER} ${DEVSTACK_SYSTEM_PASSWORD}
SSHLibrary.Set Client Configuration timeout=${default_devstack_prompt_timeout}
Write Commands Until Prompt
*** Settings ***
Library SSHLibrary
-Resource ../Utils.robot
+Resource ../SSHKeywords.robot
*** Variables ***
${VE_DIR} ${WORKSPACE}/GBPSFC_VE
Connect and Login
[Arguments] ${ip} ${timeout}=3s
SSHLibrary.Open Connection ${ip} timeout=${timeout}
- Utils.Flexible Mininet Login
+ SSHKeywords.Flexible Mininet Login
Execute in VE
[Arguments] ${cmd} ${virt_env_path}=${VE_DIR} ${timeout}=10s
*** Settings ***
Documentation Mininet library. This library is useful for tests using mininet tool to simulate devices.
Library SSHLibrary
+Resource SSHKeywords.robot
Resource Utils.robot
Resource OVSDB.robot
Resource ClusterManagement.robot
Utils.Clean Mininet System ${mininet}
${mininet_conn_id}= SSHLibrary.Open Connection ${mininet} prompt=${TOOLS_SYSTEM_PROMPT} timeout=${timeout}
Set Suite Variable ${mininet_conn_id}
- Utils.Flexible Mininet Login
+ SSHKeywords.Flexible Mininet Login
Run Keyword If '${custom}' != '${EMPTY}' Put File ${custom}
Log Start mininet ${options} to ${controller}
SSHLibrary.Write sudo mn --controller 'remote,ip=${controller},port=${ofport}' ${options}
Utils.Clean Mininet System ${mininet}
${mininet_conn_id}= SSHLibrary.Open Connection ${mininet} prompt=${TOOLS_SYSTEM_PROMPT} timeout=${timeout}
Set Suite Variable ${mininet_conn_id}
- Utils.Flexible Mininet Login
+ SSHKeywords.Flexible Mininet Login
Run Keyword If '${custom}' != '${EMPTY}' Put File ${custom}
Log Start mininet ${options}
SSHLibrary.Write sudo mn ${options}
[Documentation] Start a custom mininet topology.
${mininet_conn_id}= SSHLibrary.Open Connection ${mininet} prompt=${TOOLS_SYSTEM_PROMPT} timeout=${mininet_timeout}
Set Suite Variable ${mininet_conn_id}
- Utils.Flexible_Mininet_Login
+ SSHKeywords.Flexible_Mininet_Login
Log Copying ${topology_file_path} file to Mininet VM and Creating Full Mesh topology
SSHLibrary.Put File ${CURDIR}/${topology_file_path}
SSHLibrary.Write python ${topology_file} ${switches} ${hosts} 00:00:00:00:00:00 10.0.0.0
*** Settings ***
Documentation OCP agent library. This library is useful for tests using ocp agent tool to simulate RRH devices.
Library SSHLibrary
-Resource Utils.robot
+Resource SSHKeywords.robot
Resource OVSDB.robot
Variables ../variables/Variables.py
Log Clear any existing Agent
${conn_id}= SSHLibrary.Open Connection ${mininet} prompt=${TOOLS_SYSTEM_PROMPT} timeout=${DEFAULT_TIMEOUT}
Set Suite Variable ${conn_id}
- Utils.Flexible Mininet Login
+ SSHKeywords.Flexible Mininet Login
SSHLibrary.Write rm -rf /tmp/agent
SSHLibrary.Write pkill -f OcpAgent
SSHLibrary.Write git clone https://git.opendaylight.org/gerrit/ocpplugin.git /tmp/agent
[Documentation] Start Agent with custom topology and connect to controller.
${mininet_conn_id}= SSHLibrary.Open Connection ${mininet} prompt=${TOOLS_SYSTEM_PROMPT} timeout=${DEFAULT_TIMEOUT}
Set Suite Variable ${mininet_conn_id}
- Utils.Flexible Mininet Login
+ SSHKeywords.Flexible Mininet Login
SSHLibrary.Write java -cp /tmp/agent/simple-agent/src/main/java/ org.opendaylight.ocpplugin.OcpAgent ${controller} 1033 ${vendorID} ${serialNumber}
SSHLibrary.Read Until getParamResp
[Return] ${mininet_conn_id}
[Documentation] Start Agent with custom topology and connect to controller.
${mininet_conn_id}= SSHLibrary.Open Connection ${mininet} prompt=${TOOLS_SYSTEM_PROMPT} timeout=${DEFAULT_TIMEOUT}
Set Suite Variable ${mininet_conn_id}
- Utils.Flexible Mininet Login
+ SSHKeywords.Flexible Mininet Login
: FOR ${NODE_NUM} IN RANGE 1 ${number}
\ SSHLibrary.Write java -cp /tmp/agent/simple-agent/src/main/java/ org.opendaylight.ocpplugin.OcpAgent ${controller} 1033 ${vendorID} ${NODE_NUM} &
\ SSHLibrary.Read Until getParamResp
Library SSHLibrary
Resource DataModels.robot
Resource Utils.robot
+Resource SSHKeywords.robot
Resource L2GatewayOperations.robot
Resource ../variables/Variables.robot
Variables ../variables/netvirt/Modules.py
[Documentation] Get the OvsConfig and Flow entries from OVS from the Openstack Node
Log ${openstack_node_ip}
SSHLibrary.Open Connection ${openstack_node_ip} prompt=${DEFAULT_LINUX_PROMPT}
- Utils.Flexible SSH Login ${OS_USER} ${DEVSTACK_SYSTEM_PASSWORD}
+ SSHKeywords.Flexible SSH Login ${OS_USER} ${DEVSTACK_SYSTEM_PASSWORD}
SSHLibrary.Set Client Configuration timeout=${default_devstack_prompt_timeout}
Write Commands Until Expected Prompt ip -o link ${DEFAULT_LINUX_PROMPT_STRICT}
Write Commands Until Expected Prompt ip -o addr ${DEFAULT_LINUX_PROMPT_STRICT}
Get ControlNode Connection
${control_conn_id}= SSHLibrary.Open Connection ${OS_CONTROL_NODE_IP} prompt=${DEFAULT_LINUX_PROMPT_STRICT}
- Utils.Flexible SSH Login ${OS_USER} ${DEVSTACK_SYSTEM_PASSWORD}
+ SSHKeywords.Flexible SSH Login ${OS_USER} ${DEVSTACK_SYSTEM_PASSWORD}
SSHLibrary.Set Client Configuration timeout=30s
Source Password force=yes
[Return] ${control_conn_id}
... When the Keywords assume a SSH session is active,
... and if the Keywords do not fit into a more specific Resource,
... you can place them here.
-...
-... TODO: Migrate Keywords related to handling SSH here.
-... That may include Utils.Flexible_SSH_Login, and similar.
Library SSHLibrary
Resource ${CURDIR}/Utils.robot
Resource ../variables/Variables.robot
[Arguments] ${ip_address}=${ODL_SYSTEM_IP} ${timeout}=10s
[Documentation] Open a connection to the ODL system at ${ip_address} and return its identifier.
${odl_connection} = SSHLibrary.Open_Connection ${ip_address} prompt=${ODL_SYSTEM_PROMPT} timeout=${timeout}
- Utils.Flexible_Controller_Login
+ Flexible_Controller_Login
[Return] ${odl_connection}
Open_Connection_To_Tools_System
[Arguments] ${ip_address}=${TOOLS_SYSTEM_IP} ${timeout}=10s
[Documentation] Open a connection to the tools system at ${ip_address} and return its identifier.
${tools_connection} = SSHLibrary.Open_Connection ${ip_address} prompt=${TOOLS_SYSTEM_PROMPT} timeout=${timeout}
- Utils.Flexible_Mininet_Login
+ Flexible_Mininet_Login
[Return] ${tools_connection}
Restore_Current_Ssh_Connection_From_Index
[Documentation] Copy the ${source} file to the ${destination} file on the remote ${system}. The keyword opens and closes a single
... ssh connection and does not rely on any existing ssh connection that may be open.
SSHLibrary.Open_Connection ${system} prompt=${prompt} timeout=${prompt_timeout}
- Utils.Flexible_SSH_Login ${user} ${password}
+ Flexible_SSH_Login ${user} ${password}
SSHLibrary.Put_File ${source} ${destination}
SSHLibrary.Close Connection
[Arguments] ${system} ${source} ${destination}=./
[Documentation] Wrapper keyword to make it easier to copy a file to an Tools specific system
SSHKeywords.Copy_File_To_Remote_System ${system} ${source} ${destination} ${TOOLS_SYSTEM_USER} ${TOOLS_SYSTEM_PASSWORD} ${TOOLS_SYSTEM_PROMPT}
+
+Flexible_SSH_Login
+ [Arguments] ${user} ${password}=${EMPTY} ${delay}=0.5s
+ [Documentation] On active SSH session: if given non-empty password, do Login, else do Login With Public Key.
+ ${pwd_length} = BuiltIn.Get Length ${password}
+ # ${pwd_length} is guaranteed to be an integer, so we are safe to evaluate it as Python expression.
+ BuiltIn.Run Keyword And Return If ${pwd_length} > 0 SSHLibrary.Login ${user} ${password} delay=${delay}
+ BuiltIn.Run Keyword And Return SSHLibrary.Login With Public Key ${user} ${USER_HOME}/.ssh/${SSH_KEY} ${KEYFILE_PASS} delay=${delay}
+
+Flexible_Mininet_Login
+ [Arguments] ${user}=${TOOLS_SYSTEM_USER} ${password}=${TOOLS_SYSTEM_PASSWORD} ${delay}=0.5s
+ [Documentation] Call Flexible SSH Login, but with default values suitable for Mininet machine.
+ BuiltIn.Run Keyword And Return Flexible SSH Login user=${user} password=${password} delay=${delay}
+
+Flexible_Controller_Login
+ [Arguments] ${user}=${ODL_SYSTEM_USER} ${password}=${ODL_SYSTEM_PASSWORD} ${delay}=0.5s
+ [Documentation] Call Flexible SSH Login, but with default values suitable for Controller machine.
+ BuiltIn.Run Keyword And Return Flexible SSH Login user=${user} password=${password} delay=${delay}
*** Settings ***
Documentation Library to catch traffic/packets using linux tcpdump command
Library SSHLibrary
+Resource SSHKeywords.robot
Resource Utils.robot
Resource RemoteBash.robot
Variables ../variables/Variables.py
[Documentation] Connects to the remote machine via ssh and starts tcpdump linux command
${currentcon}= SSHLibrary.Get Connection index=True
SSHLibrary.Open Connection ${system} prompt=${prompt} timeout=${timeout} alias=${dumpalias}
- Utils.Flexible SSH Login ${user} password=${password} delay=${timeout}
+ SSHKeywords.Flexible SSH Login ${user} password=${password} delay=${timeout}
SSHLibrary.Write ${dumpcmd} -i ${eth} ${more_params}
Run Keyword If ${currentcon}==${None} Return From Keyword
SSHLibrary.Switch Connection ${currentcon}
[Documentation] Connects to the remote machine and starts tcpdump
${current_ssh_connection}= SSHLibrary.Get Connection
${conn_id}= SSHLibrary.Open Connection ${node_ip} prompt=${prompt} timeout=${prompt_timeout}
- Flexible SSH Login ${user} ${password}
+ SSHKeywords.Flexible SSH Login ${user} ${password}
${cmd} = Set Variable sudo /usr/sbin/tcpdump -vvv -ni ${networkAdapter} -w /tmp/${file_Name}.pcap
${stdout} ${stderr} = SSHLibrary.Start Command ${cmd}
Log ${stderr}
Library SSHLibrary
Library UtilLibrary.py
Resource RemoteBash.robot
+Resource SSHKeywords.robot
*** Variables ***
${REST_VIEW_CHANNEL} /restconf/operations/usc-channel:view-channel
Clean Mininet System
${mininet_conn_id}= Open Connection ${system} prompt=${prompt} timeout=${timeout}
Set Suite Variable ${mininet_conn_id}
- Flexible Mininet Login user=${user} password=${password}
+ SSHKeywords.Flexible Mininet Login user=${user} password=${password}
Execute Command sudo ovs-vsctl set-manager ptcp:6644
Write ${start}
Read Until mininet>
${string_to_return}= Replace String ${string_to_strip} " \ count=-1
[Return] ${string_to_return}
-Flexible SSH Login
- [Arguments] ${user} ${password}=${EMPTY} ${delay}=0.5s
- [Documentation] On active SSH session: if given non-empty password, do Login, else do Login With Public Key.
- ${pwd_length} = BuiltIn.Get Length ${password}
- # ${pwd_length} is guaranteed to be an integer, so we are safe to evaluate it as Python expression.
- BuiltIn.Run Keyword And Return If ${pwd_length} > 0 SSHLibrary.Login ${user} ${password} delay=${delay}
- BuiltIn.Run Keyword And Return SSHLibrary.Login With Public Key ${user} ${USER_HOME}/.ssh/${SSH_KEY} ${KEYFILE_PASS} delay=${delay}
-
-Flexible Mininet Login
- [Arguments] ${user}=${TOOLS_SYSTEM_USER} ${password}=${TOOLS_SYSTEM_PASSWORD} ${delay}=0.5s
- [Documentation] Call Flexible SSH Login, but with default values suitable for Mininet machine.
- BuiltIn.Run Keyword And Return Flexible SSH Login user=${user} password=${password} delay=${delay}
-
-Flexible Controller Login
- [Arguments] ${user}=${ODL_SYSTEM_USER} ${password}=${ODL_SYSTEM_PASSWORD} ${delay}=0.5s
- [Documentation] Call Flexible SSH Login, but with default values suitable for Controller machine.
- BuiltIn.Run Keyword And Return Flexible SSH Login user=${user} password=${password} delay=${delay}
-
Run Command On Remote System
[Arguments] ${system} ${cmd} ${user}=${DEFAULT_USER} ${password}=${EMPTY} ${prompt}=${DEFAULT_LINUX_PROMPT} ${prompt_timeout}=${DEFAULT_TIMEOUT}
[Documentation] Reduces the common work of running a command on a remote system to a single higher level
BuiltIn.Log Attempting to execute command "${cmd}" on remote system "${system}" by user "${user}" with keyfile pass "${keyfile_pass}" and prompt "${prompt}"
BuiltIn.Log ${password}
${conn_id}= SSHLibrary.Open Connection ${system} prompt=${prompt} timeout=${prompt_timeout}
- Flexible SSH Login ${user} ${password}
+ SSHKeywords.Flexible SSH Login ${user} ${password}
${stdout} ${stderr} SSHLibrary.Execute Command ${cmd} return_stderr=True
SSHLibrary.Close Connection
Log ${stderr}
[Documentation] Will create connection with public key and will PASS if the given ${file} exists,
... otherwise will FAIL
${conn_id}= Open Connection ${system} prompt=${prompt} timeout=${prompt_timeout}
- Flexible SSH Login ${user} ${password}
+ SSHKeywords.Flexible SSH Login ${user} ${password}
SSHLibrary.File Should Exist ${file}
Close Connection
[Documentation] Keyword to install packages for testing to Ubuntu Mininet VM
Log Keyword to install package to Mininet Ubuntu VM
Open Connection ${system} prompt=${prompt} timeout=${prompt_timeout}
- Flexible Mininet Login user=${user} password=${password}
+ SSHKeywords.Flexible Mininet Login user=${user} password=${password}
Write sudo apt-get install -y ${package_name}
Read Until ${prompt}
ClusterManagement.ClusterManagement_Setup
${tools_system_conn_id}= SSHLibrary.Open_Connection ${TOOLS_SYSTEM_IP} prompt=${DEFAULT_LINUX_PROMPT} timeout=6s
Builtin.Set_Suite_Variable ${tools_system_conn_id}
- Utils.Flexible_Mininet_Login ${TOOLS_SYSTEM_USER}
+ SSHKeywords.Flexible_Mininet_Login ${TOOLS_SYSTEM_USER}
SSHKeywords.Virtual_Env_Create
SSHKeywords.Virtual_Env_Install_Package exabgp==3.4.16
Upload_Config_Files
ClusterManagement.ClusterManagement_Setup
${tools_system_conn_id}= SSHLibrary.Open_Connection ${TOOLS_SYSTEM_IP} prompt=${DEFAULT_LINUX_PROMPT} timeout=6s
Builtin.Set_Suite_Variable ${tools_system_conn_id}
- Utils.Flexible_Mininet_Login ${TOOLS_SYSTEM_USER}
+ SSHKeywords.Flexible_Mininet_Login ${TOOLS_SYSTEM_USER}
SSHKeywords.Virtual_Env_Create
SSHKeywords.Virtual_Env_Install_Package exabgp==3.4.16
Upload_Config_Files
BuiltIn.Set_Suite_Variable ${pc_all_indices} ${indices}
SSHLibrary.Set_Default_Configuration prompt=${TOOLS_SYSTEM_PROMPT}
SSHLibrary.Open_Connection ${TOOLS_SYSTEM_IP}
- Utils.Flexible_Mininet_Login
+ SSHKeywords.Flexible_Mininet_Login
# TODO: Do not include slash in ${OPERATIONAL_TOPO_API}, having it typed here is more readable.
# TODO: Alternatively, create variable in Variables which starts with http.
# Both TODOs would probably need to update every suite relying on current Variables.
Variables ${CURDIR}/../../../variables/Variables.py
Variables ${CURDIR}/../../../variables/bgpuser/variables.py ${TOOLS_SYSTEM_IP} ${ODL_STREAM}
Resource ${CURDIR}/../../../libraries/ExaBgpLib.robot
-Resource ${CURDIR}/../../../libraries/Utils.robot
+Resource ${CURDIR}/../../../libraries/SSHKeywords.robot
Resource ${CURDIR}/../../../libraries/SetupUtils.robot
Resource ${CURDIR}/../../../libraries/CompareStream.robot
Resource ${CURDIR}/../../../libraries/TemplatedRequests.robot
[Documentation] Suite setup keyword
${mininet_conn_id}= SSHLibrary.Open Connection ${TOOLS_SYSTEM_IP} prompt=${DEFAULT_LINUX_PROMPT} timeout=6s
Builtin.Set Suite Variable ${mininet_conn_id}
- Utils.Flexible Mininet Login ${TOOLS_SYSTEM_USER}
+ SSHKeywords.Flexible Mininet Login ${TOOLS_SYSTEM_USER}
${stdout} ${stderr} ${rc}= SSHLibrary.Execute Command ls return_stdout=True return_stderr=True
... return_rc=True
${stdout} ${stderr} ${rc}= SSHLibrary.Execute Command sudo apt-get install -y python-pip return_stdout=True return_stderr=True
SetupUtils.Setup_Utils_For_Setup_And_Teardown
${tools_system_conn_id}= SSHLibrary.Open_Connection ${TOOLS_SYSTEM_IP} prompt=${DEFAULT_LINUX_PROMPT} timeout=6s
Builtin.Set_Suite_Variable ${tools_system_conn_id}
- Utils.Flexible_Mininet_Login ${TOOLS_SYSTEM_USER}
+ SSHKeywords.Flexible_Mininet_Login ${TOOLS_SYSTEM_USER}
SSHKeywords.Virtual_Env_Create
SSHKeywords.Virtual_Env_Install_Package exabgp==3.4.16
RequestsLibrary.Create_Session ${CONFIG_SESSION} http://${ODL_SYSTEM_IP}:${RESTCONFPORT} auth=${AUTH}
SetupUtils.Setup_Utils_For_Setup_And_Teardown
${tools_system_conn_id}= SSHLibrary.Open_Connection ${TOOLS_SYSTEM_IP} prompt=${DEFAULT_LINUX_PROMPT} timeout=6s
Builtin.Set_Suite_Variable ${tools_system_conn_id}
- Utils.Flexible_Mininet_Login ${TOOLS_SYSTEM_USER}
+ SSHKeywords.Flexible_Mininet_Login ${TOOLS_SYSTEM_USER}
SSHKeywords.Virtual_Env_Create
SSHKeywords.Virtual_Env_Install_Package exabgp==3.4.16
RequestsLibrary.Create_Session ${CONFIG_SESSION} http://${ODL_SYSTEM_IP}:${RESTCONFPORT} auth=${AUTH}
Library RequestsLibrary
Library SSHLibrary
Variables ${CURDIR}/../../../variables/Variables.py
-Resource ${CURDIR}/../../../libraries/Utils.robot
Resource ${CURDIR}/../../../libraries/SetupUtils.robot
Resource ${CURDIR}/../../../libraries/TemplatedRequests.robot
Library ${CURDIR}/../../../libraries/BgpRpcClient.py ${TOOLS_SYSTEM_IP}
SetupUtils.Setup_Utils_For_Setup_And_Teardown
${mininet_conn_id}= SSHLibrary.Open Connection ${TOOLS_SYSTEM_IP} prompt=${DEFAULT_LINUX_PROMPT} timeout=6s
Builtin.Set Suite Variable ${mininet_conn_id}
- Utils.Flexible Mininet Login ${TOOLS_SYSTEM_USER}
+ SSHKeywords.Flexible Mininet Login ${TOOLS_SYSTEM_USER}
RequestsLibrary.Create Session ${CONFIG_SESSION} http://${ODL_SYSTEM_IP}:${RESTCONFPORT} auth=${AUTH}
SSHLibrary.Put File ${PLAY_SCRIPT} .
SSHKeywords.Assure_Library_Ipaddr target_dir=.
Library SSHLibrary
Variables ${CURDIR}/../../../variables/Variables.py
Resource ${CURDIR}/../../../libraries/ExaBgpLib.robot
-Resource ${CURDIR}/../../../libraries/Utils.robot
Resource ${CURDIR}/../../../libraries/SetupUtils.robot
Resource ${CURDIR}/../../../libraries/TemplatedRequests.robot
Resource ${CURDIR}/../../../libraries/SSHKeywords.robot
SetupUtils.Setup_Utils_For_Setup_And_Teardown
${mininet_conn_id}= SSHLibrary.Open Connection ${TOOLS_SYSTEM_IP} prompt=${DEFAULT_LINUX_PROMPT} timeout=6s
Builtin.Set_Suite_Variable ${mininet_conn_id}
- Utils.Flexible_Mininet_Login ${TOOLS_SYSTEM_USER}
+ SSHKeywords.Flexible_Mininet_Login ${TOOLS_SYSTEM_USER}
SSHKeywords.Virtual_Env_Create
SSHKeywords.Virtual_Env_Install_Package exabgp==3.4.16
RequestsLibrary.Create_Session ${CONFIG_SESSION} http://${ODL_SYSTEM_IP}:${RESTCONFPORT} auth=${AUTH}
Resource ${CURDIR}/../../../libraries/SetupUtils.robot
Resource ${CURDIR}/../../../libraries/SSHKeywords.robot
Resource ${CURDIR}/../../../libraries/TemplatedRequests.robot
-Resource ${CURDIR}/../../../libraries/Utils.robot
Resource ${CURDIR}/../../../libraries/WaitForFailure.robot
*** Variables ***
SetupUtils.Setup_Utils_For_Setup_And_Teardown
${tools_system_conn_id}= SSHLibrary.Open_Connection ${TOOLS_SYSTEM_IP} prompt=${DEFAULT_LINUX_PROMPT} timeout=6s
Builtin.Set_Suite_Variable ${tools_system_conn_id}
- Utils.Flexible_Mininet_Login ${TOOLS_SYSTEM_USER}
+ SSHKeywords.Flexible_Mininet_Login ${TOOLS_SYSTEM_USER}
SSHKeywords.Virtual_Env_Create
SSHKeywords.Virtual_Env_Install_Package exabgp==3.4.17
RequestsLibrary.Create_Session ${CONFIG_SESSION} http://${ODL_SYSTEM_IP}:${RESTCONFPORT} auth=${AUTH}
Open_BGP_Peer_Console
[Documentation] Create a session for BGP peer.
SSHLibrary.Open_Connection ${TOOLS_SYSTEM_IP} alias=bgp_peer_console
- Utils.Flexible_Mininet_Login
+ SSHKeywords.Flexible_Mininet_Login
Open_BGP_Aplicationp_Peer_Console
[Documentation] Create a session for BGP peer.
SSHLibrary.Open_Connection ${TOOLS_SYSTEM_IP} alias=bgp_app_peer_console
- Utils.Flexible_Mininet_Login
+ SSHKeywords.Flexible_Mininet_Login
# Both TODOs would probably need to update every suite relying on current Variables.
SSHLibrary.Set_Default_Configuration prompt=${ODL_SYSTEM_PROMPT}
SSHLibrary.Open_Connection ${ODL_SYSTEM_IP}
- Utils.Flexible_Controller_Login
+ SSHKeywords.Flexible_Controller_Login
SSHKeywords.Require_Python
SSHKeywords.Assure_Library_Ipaddr target_dir=.
SSHLibrary.Put_File ${CURDIR}/../../../../tools/fastbgp/play.py
# Both TODOs would probably need to update every suite relying on current Variables.
SSHLibrary.Set_Default_Configuration prompt=${ODL_SYSTEM_PROMPT}
SSHLibrary.Open_Connection ${ODL_SYSTEM_IP}
- Utils.Flexible_Controller_Login
+ SSHKeywords.Flexible_Controller_Login
SSHKeywords.Require_Python
SSHKeywords.Assure_Library_Ipaddr target_dir=.
SSHLibrary.Put_File ${CURDIR}/../../../../tools/fastbgp/play.py
# Both TODOs would probably need to update every suite relying on current Variables.
SSHLibrary.Set_Default_Configuration prompt=${ODL_SYSTEM_PROMPT}
SSHLibrary.Open_Connection ${ODL_SYSTEM_IP}
- Utils.Flexible_Controller_Login
+ SSHKeywords.Flexible_Controller_Login
SSHKeywords.Require_Python
SSHKeywords.Assure_Library_Ipaddr target_dir=.
SSHLibrary.Put_File ${CURDIR}/../../../../tools/fastbgp/play.py
# Both TODOs would probably need to update every suite relying on current Variables.
SSHLibrary.Set_Default_Configuration prompt=${TOOLS_SYSTEM_PROMPT}
SSHLibrary.Open_Connection ${TOOLS_SYSTEM_IP}
- Utils.Flexible_Mininet_Login
+ SSHKeywords.Flexible_Mininet_Login
SSHKeywords.Require_Python
SSHKeywords.Assure_Library_Ipaddr target_dir=.
SSHLibrary.Put_File ${CURDIR}/../../../../tools/fastbgp/play.py
# Both TODOs would probably need to update every suite relying on current Variables.
SSHLibrary.Set_Default_Configuration prompt=${TOOLS_SYSTEM_PROMPT}
SSHLibrary.Open_Connection ${TOOLS_SYSTEM_IP}
- Utils.Flexible_Mininet_Login
+ SSHKeywords.Flexible_Mininet_Login
SSHKeywords.Require_Python
SSHKeywords.Assure_Library_Ipaddr target_dir=.
SSHLibrary.Put_File ${CURDIR}/../../../../tools/fastbgp/play.py
Resource ${CURDIR}/../../../libraries/KillPythonTool.robot
Resource ${CURDIR}/../../../libraries/SetupUtils.robot
Resource ${CURDIR}/../../../libraries/SSHKeywords.robot
-Resource ${CURDIR}/../../../libraries/Utils.robot
Resource ${CURDIR}/../../../libraries/WaitForFailure.robot
Resource ${CURDIR}/../../../libraries/CompareStream.robot
Open_BGP_Peer_Console
[Documentation] Create a session for BGP peer.
SSHLibrary.Open_Connection ${TOOLS_SYSTEM_IP} alias=bgp_peer_console
- Utils.Flexible_Mininet_Login
+ SSHKeywords.Flexible_Mininet_Login
Open_BGP_Aplicationp_Peer_Console
[Documentation] Create a session for BGP peer.
SSHLibrary.Open_Connection ${TOOLS_SYSTEM_IP} alias=bgp_app_peer_console
- Utils.Flexible_Mininet_Login
+ SSHKeywords.Flexible_Mininet_Login
Switch_To_BGP_Peer_Console
SSHLibrary.Switch Connection bgp_peer_console
OperatingSystem.Create_Directory ${EXPECTED_RESPONSES_FOLDER}
OperatingSystem.Create_Directory ${ACTUAL_RESPONSES_FOLDER}
SSHLibrary.Open_Connection ${TOOLS_SYSTEM_IP}
- Utils.Flexible_Mininet_Login
+ SSHKeywords.Flexible_Mininet_Login
SSHKeywords.Require_Python
SSHKeywords.Assure_Library_Ipaddr target_dir=.
SSHLibrary.Put_File ${CURDIR}/../../../../tools/fastbgp/play.py
Resource ${CURDIR}/../../../libraries/SetupUtils.robot
Resource ${CURDIR}/../../../libraries/SSHKeywords.robot
Resource ${CURDIR}/../../../libraries/TemplatedRequests.robot
-Resource ${CURDIR}/../../../libraries/Utils.robot
Resource ${CURDIR}/../../../libraries/WaitForFailure.robot
*** Variables ***
SetupUtils.Setup_Utils_For_Setup_And_Teardown
SSHLibrary.Set_Default_Configuration prompt=${ODL_SYSTEM_PROMPT}
SSHLibrary.Open_Connection ${ODL_SYSTEM_IP} alias=ibgp_peer1_console
- Utils.Flexible_Controller_Login
+ SSHKeywords.Flexible_Controller_Login
SSHLibrary.Open_Connection ${ODL_SYSTEM_IP} alias=ebgp_peer1_console
- Utils.Flexible_Controller_Login
+ SSHKeywords.Flexible_Controller_Login
SSHLibrary.Open_Connection ${ODL_SYSTEM_IP} alias=ebgp_peer2_console
- Utils.Flexible_Controller_Login
+ SSHKeywords.Flexible_Controller_Login
SSHKeywords.Require_Python
SSHKeywords.Assure_Library_Ipaddr target_dir=.
SSHLibrary.Put_File ${CURDIR}/../../../../tools/fastbgp/play.py
Resource ${CURDIR}/../../../libraries/SetupUtils.robot
Resource ${CURDIR}/../../../libraries/SSHKeywords.robot
Resource ${CURDIR}/../../../libraries/TemplatedRequests.robot
-Resource ${CURDIR}/../../../libraries/Utils.robot
Resource ${CURDIR}/../../../libraries/WaitForFailure.robot
*** Variables ***
SetupUtils.Setup_Utils_For_Setup_And_Teardown
SSHLibrary.Set_Default_Configuration prompt=${TOOLS_SYSTEM_PROMPT}
SSHLibrary.Open_Connection ${TOOLS_SYSTEM_IP} alias=bgp_peer_console
- Utils.Flexible_Mininet_Login
+ SSHKeywords.Flexible_Mininet_Login
SSHKeywords.Require_Python
SSHKeywords.Assure_Library_Ipaddr target_dir=.
SSHLibrary.Put_File ${CURDIR}/../../../../tools/fastbgp/play.py
SetupUtils.Setup_Utils_For_Setup_And_Teardown
SSHLibrary.Set_Default_Configuration prompt=${ODL_SYSTEM_PROMPT}
SSHLibrary.Open_Connection ${ODL_SYSTEM_IP} alias=bgp_peer1_console
- Utils.Flexible_Controller_Login
+ SSHKeywords.Flexible_Controller_Login
SSHLibrary.Open_Connection ${ODL_SYSTEM_IP} alias=bgp_peer2_console
- Utils.Flexible_Controller_Login
+ SSHKeywords.Flexible_Controller_Login
SSHKeywords.Require_Python
SSHKeywords.Assure_Library_Ipaddr target_dir=.
SSHLibrary.Put_File ${CURDIR}/../../../../tools/fastbgp/play.py
Library ${CURDIR}/../../../libraries/AuthStandalone.py
Resource ${CURDIR}/../../../libraries/FailFast.robot
Resource ${CURDIR}/../../../libraries/NexusKeywords.robot # for Deploy_Artifact
-Resource ${CURDIR}/../../../libraries/SSHKeywords.robot # for Require_* and Assure_*
-Resource ${CURDIR}/../../../libraries/Utils.robot # for Flexible_SSH_Login
+Resource ${CURDIR}/../../../libraries/SSHKeywords.robot # for Require_* and Assure_*, Flexible_SSH_Login
*** Variables ***
# This table acts as an exhaustive list of variables users can modify on pybot invocation.
SSHLibrary.Open_Connection ${PCCMOCKVM_IP} alias=pccmock
SSHLibrary.Set_Client_Configuration timeout=10s
SSHLibrary.Set_Client_Configuration prompt=${PCCMOCKVM_PROMPT}
- Utils.Flexible_SSH_Login ${PCCMOCKVM_USER} ${PCCMOCKVM_PASSWORD} delay=4s
+ SSHKeywords.Flexible_SSH_Login ${PCCMOCKVM_USER} ${PCCMOCKVM_PASSWORD} delay=4s
${file_name} = NexusKeywords.Deploy_Test_Tool bgpcep pcep-pcc-mock
BuiltIn.Set_Suite_Variable ${mock_location} ${file_name}
SSHLibrary.Open_Connection ${UPDATERVM_IP} alias=updater
SSHLibrary.Set_Client_Configuration timeout=20s
SSHLibrary.Set_Client_Configuration prompt=${UPDATERVM_PROMPT}
- Utils.Flexible_SSH_Login ${UPDATERVM_USER} ${UPDATERVM_PASSWORD} delay=4s
+ SSHKeywords.Flexible_SSH_Login ${UPDATERVM_USER} ${UPDATERVM_PASSWORD} delay=4s
SSHKeywords.Require_Python
SSHLibrary.Put_File ${CURDIR}/../../../../tools/pcep_updater/updater.py ${UPDATERVM_WORKSPACE}/
SSHLibrary.Put_File ${CURDIR}/../../../libraries/AuthStandalone.py ${UPDATERVM_WORKSPACE}/
Resource ../../../libraries/Utils.robot
Resource ../../../libraries/SetupUtils.robot
Resource ../../../libraries/RemoteBash.robot
+Resource ../../../libraries/SSHKeywords.robot
*** Variables ***
${ITEM_COUNT} ${10000}
KarafKeywords.Execute_Controller_Karaf_Command_On_Background log:set ${CONTROLLER_LOG_LEVEL}
${mininet_conn_id}= SSHLibrary.Open Connection ${TOOLS_SYSTEM_IP} prompt=${TOOLS_SYSTEM_PROMPT} timeout=6s
Builtin.Set Suite Variable ${mininet_conn_id}
- Utils.Flexible Mininet Login ${TOOLS_SYSTEM_USER}
+ SSHKeywords.Flexible Mininet Login ${TOOLS_SYSTEM_USER}
SSHLibrary.Put File ${CURDIR}/../../../../tools/odl-mdsal-clustering-tests/scripts/cluster_rest_script.py .
${stdout} ${stderr} ${rc}= SSHLibrary.Execute Command ls return_stdout=True return_stderr=True
... return_rc=True
Resource ../../../libraries/Utils.robot
Resource ../../../libraries/SetupUtils.robot
Resource ../../../libraries/RemoteBash.robot
+Resource ../../../libraries/SSHKeywords.robot
Resource ../../../libraries/ClusterManagement.robot
Resource ../../../libraries/CarPeople.robot
KarafKeywords.Execute_Controller_Karaf_Command_On_Background log:set ${CONTROLLER_LOG_LEVEL}
${mininet_conn_id}= SSHLibrary.Open Connection ${TOOLS_SYSTEM_IP} prompt=${DEFAULT_LINUX_PROMPT} timeout=6s
Builtin.Set Suite Variable ${mininet_conn_id}
- Utils.Flexible Mininet Login ${TOOLS_SYSTEM_USER}
+ SSHKeywords.Flexible Mininet Login ${TOOLS_SYSTEM_USER}
SSHLibrary.Put File ${CURDIR}/../../../../tools/odl-mdsal-clustering-tests/scripts/cluster_rest_script.py .
${stdout} ${stderr} ${rc}= SSHLibrary.Execute Command ls return_stdout=True return_stderr=True
... return_rc=True
Resource ${CURDIR}/../../../libraries/ClusterManagement.robot
Resource ${CURDIR}/../../../libraries/RemoteBash.robot
Resource ${CURDIR}/../../../libraries/SetupUtils.robot
+Resource ${CURDIR}/../../../libraries/SSHKeywords.robot
Resource ${CURDIR}/../../../libraries/Utils.robot
Resource ${CURDIR}/../../../libraries/WaitForFailure.robot
SetupUtils.Setup_Utils_For_Setup_And_Teardown
SSHLibrary.Set_Default_Configuration prompt=${TOOLS_SYSTEM_PROMPT}
SSHLibrary.Open_Connection ${TOOLS_SYSTEM_IP}
- Utils.Flexible_Mininet_Login
+ SSHKeywords.Flexible_Mininet_Login
SSHLibrary.Put_File ${CURDIR}/../../../../tools/mdsal_benchmark/${tool}
SSHKeywords.Virtual_Env_Create
SSHKeywords.Virtual_Env_Install_Package requests
Documentation Creates/closes SSH connections to all GBP nodes. Existing connections
... can be identified by aliases.
Library SSHLibrary
-Resource ../../../../libraries/Utils.robot
+Resource ../../../../libraries/SSHKeywords.robot
Resource Variables.robot
*** Keywords ***
Start Connections
[Documentation] Establishes connections to remote VMs.
SSHLibrary.Open Connection ${GBP1} alias=GBP1_CONNECTION
- Utils.Flexible Mininet Login
+ SSHKeywords.Flexible Mininet Login
SSHLibrary.Open Connection ${GBP2} alias=GBP2_CONNECTION
- Utils.Flexible Mininet Login
+ SSHKeywords.Flexible Mininet Login
SSHLibrary.Open Connection ${GBP3} alias=GBP3_CONNECTION
- Utils.Flexible Mininet Login
+ SSHKeywords.Flexible Mininet Login
Close Connections
[Documentation] Closes connections to remote VMs.
*** Settings ***
Library SSHLibrary
-Resource ../../../../libraries/Utils.robot
+Resource ../../../../libraries/SSHKeywords.robot
Resource ../../../../libraries/GBP/ConnUtils.robot
Variables ../../../../variables/Variables.py
Resource Variables.robot
Start Connections
[Documentation] Establishes connections to remote VMs.
SSHLibrary.Open Connection ${GBPSFC1} alias=GPSFC1_CONNECTION
- Utils.Flexible Mininet Login
+ SSHKeywords.Flexible Mininet Login
SSHLibrary.Open Connection ${GBPSFC2} alias=GPSFC2_CONNECTION
- Utils.Flexible Mininet Login
+ SSHKeywords.Flexible Mininet Login
SSHLibrary.Open Connection ${GBPSFC3} alias=GPSFC3_CONNECTION
- Utils.Flexible Mininet Login
+ SSHKeywords.Flexible Mininet Login
SSHLibrary.Open Connection ${GBPSFC4} alias=GPSFC4_CONNECTION
- Utils.Flexible Mininet Login
+ SSHKeywords.Flexible Mininet Login
SSHLibrary.Open Connection ${GBPSFC5} alias=GPSFC5_CONNECTION
- Utils.Flexible Mininet Login
+ SSHKeywords.Flexible Mininet Login
SSHLibrary.Open Connection ${GBPSFC6} alias=GPSFC6_CONNECTION
- Utils.Flexible Mininet Login
+ SSHKeywords.Flexible Mininet Login
Close Connections
[Documentation] Closes connections to remote VMs.
Library RequestsLibrary
Library OperatingSystem
Variables ../../../../../variables/Variables.py
-Resource ../../../../../libraries/Utils.robot
+Resource ../../../../../libraries/SSHKeywords.robot
Resource ../Variables.robot
Resource ../../../../../libraries/GBP/OpenFlowUtils.robot
Wait For Manager and Switch Connected on GBPSFC2
[Documentation] Making sure that manager is connected for further processing.
SSHLibrary.Open Connection ${GBPSFC2}
- Utils.Flexible Mininet Login
+ SSHKeywords.Flexible Mininet Login
Wait Until Keyword Succeeds 2min 3s Manager and Switch Connected sw_name=sw2
SSHLibrary.Close Connection
Wait For Manager and Switch Connected on GBPSFC4
[Documentation] Making sure that manager is connected for further processing.
SSHLibrary.Open Connection ${GBPSFC4}
- Utils.Flexible Mininet Login
+ SSHKeywords.Flexible Mininet Login
Wait Until Keyword Succeeds 2min 3s Manager and Switch Connected sw_name=sw4
SSHLibrary.Close Connection
Library RequestsLibrary
Library OperatingSystem
Variables ../../../../../variables/Variables.py
-Resource ../../../../../libraries/Utils.robot
+Resource ../../../../../libraries/SSHKeywords.robot
Resource ../Variables.robot
Resource ../../../../../libraries/GBP/OpenFlowUtils.robot
Wait For Manager and Switch Connected on GBPSFC2
[Documentation] Making sure that manager is connected for further processing.
SSHLibrary.Open Connection ${GBPSFC2}
- Utils.Flexible Mininet Login
+ SSHKeywords.Flexible Mininet Login
Wait Until Keyword Succeeds 2min 3s Manager and Switch Connected sw_name=sw2
SSHLibrary.Close Connection
Wait For Manager and Switch Connected on GBPSFC4
[Documentation] Making sure that manager is connected for further processing.
SSHLibrary.Open Connection ${GBPSFC4}
- Utils.Flexible Mininet Login
+ SSHKeywords.Flexible Mininet Login
Wait Until Keyword Succeeds 2min 3s Manager and Switch Connected sw_name=sw4
SSHLibrary.Close Connection
# global variables. This will allow for tracking more Netconf
# connections, increasing utility.
${control}= SSHLibrary.Open_Connection ${host} prompt=${ODL_SYSTEM_PROMPT} timeout=10s
- Utils.Flexible_Controller_Login
+ SSHKeywords.Flexible_Controller_Login
BuiltIn.Set_Suite_Variable ${ssh_control} ${control}
${netconf}= SSHLibrary.Open_Connection ${host} prompt=${ODL_SYSTEM_PROMPT} timeout=10s
- Utils.Flexible_Controller_Login
+ SSHKeywords.Flexible_Controller_Login
BuiltIn.Set_Suite_Variable ${ssh_netconf} ${netconf}
BuiltIn.Set_Suite_Variable ${ssh_port} ${port}
BuiltIn.Set_Suite_Variable ${ssh_user} ${user}
Resource ${CURDIR}/../../../libraries/KarafKeywords.robot
Resource ${CURDIR}/../../../libraries/SetupUtils.robot
Resource ${CURDIR}/../../../libraries/SSHKeywords.robot
-Resource ${CURDIR}/../../../libraries/Utils.robot
Resource ${CURDIR}/../../../libraries/TemplatedRequests.robot
Resource ${CURDIR}/../../../libraries/WaitForFailure.robot
TemplatedRequests.Create_Default_Session
SSHLibrary.Set_Default_Configuration prompt=${TOOLS_SYSTEM_PROMPT}
SSHLibrary.Open_Connection ${TOOLS_SYSTEM_IP} alias=receiver
- Utils.Flexible_Mininet_Login
+ SSHKeywords.Flexible_Mininet_Login
SSHLibrary.Put_File ${CURDIR}/../../../../tools/wstools/wsreceiver.py
${output_log} ${error_log} = SSHLibrary.Execute Command sudo apt-get install -y python-pip return_stdout=True return_stderr=True
BuiltIn.Log ${output_log}
Resource ${CURDIR}/../../../libraries/NetconfKeywords.robot
Resource ${CURDIR}/../../../libraries/SetupUtils.robot
Resource ${CURDIR}/../../../libraries/SSHKeywords.robot
-Resource ${CURDIR}/../../../libraries/Utils.robot
Variables ${CURDIR}/../../../variables/Variables.py
*** Variables ***
[Documentation] Spawn the specified count of worker threads to issue a GET request to each of the devices.
${current_ssh_connection}= SSHLibrary.Get Connection
SSHLibrary.Open_Connection ${TOOLS_SYSTEM_IP}
- Utils.Flexible_Mininet_Login
+ SSHKeywords.Flexible_Mininet_Login
SSHLibrary.Write python getter.py --odladdress=${ODL_SYSTEM_IP} --count=${DEVICE_COUNT} --name=${device_name_base} --workers=${WORKER_COUNT}
: FOR ${number} IN RANGE 1 ${DEVICE_COUNT}+1
\ Read_Python_Tool_Operation_Result ${number}
Resource ../../../libraries/DevstackUtils.robot
Resource ../../../libraries/OpenStackOperations.robot
Resource ../../../libraries/SetupUtils.robot
-Resource ../../../libraries/Utils.robot
+Resource ../../../libraries/SSHKeywords.robot
Variables ../../../variables/Variables.py
Resource ../../../variables/netvirt/Variables.robot
Create Subnet ${external_net_name} ${external_subnet_name} ${external_subnet} --gateway ${external_gateway} --allocation-pool ${external_subnet_allocation_pool}
List Networks
${control_node_conn_id}= SSHLibrary.Open Connection ${OS_CONTROL_NODE_IP} prompt=${DEFAULT_LINUX_PROMPT_STRICT}
- Utils.Flexible SSH Login ${OS_USER}
+ SSHKeywords.Flexible SSH Login ${OS_USER}
Write Commands Until Prompt source ${DEVSTACK_DEPLOY_PATH}/openrc admin admin
Write Commands Until Prompt sudo rm -rf /opt/stack/tempest/.testrepository
${net_id}= Get Net Id ${external_net_name} ${control_node_conn_id}
Library ../../../libraries/SFC/SfcUtils.py
Variables ../../../variables/Variables.py
Resource ../../../variables/sfc/Variables.robot
-Resource ../../../libraries/Utils.robot
+Resource ../../../libraries/SSHKeywords.robot
Resource ../../../libraries/TemplatedRequests.robot
Resource ../../../libraries/KarafKeywords.robot
Resource ../../../libraries/SFC/DockerSfc.robot
Init Suite
[Documentation] Connect Create session and initialize ODL version specific variables
SSHLibrary.Open Connection ${TOOLS_SYSTEM_IP} timeout=3s
- Utils.Flexible Mininet Login
+ SSHKeywords.Flexible Mininet Login
${docker_cidr}= DockerSfc.Get Docker Bridge Subnet
${docker_nw}= SfcUtils.Get Network From Cidr ${docker_cidr}
${docker_mask}= SfcUtils.Get Mask From Cidr ${docker_cidr}
... Useful when library documentation mentions version-specific behavior.
Library OperatingSystem
Library SSHLibrary
-Resource ${CURDIR}/../../libraries/Utils.robot
+Resource ${CURDIR}/../../libraries/SSHKeywords.robot
*** Test Cases ***
Freeze
Ulimit_On_Controller
SSHLibrary.Open_Connection ${ODL_SYSTEM_IP}
- Utils.Flexible_Controller_Login
+ SSHKeywords.Flexible_Controller_Login
${limits} = SSHLibrary.Execute_Command bash -c "ulimit -a"
BuiltIn.Log ${limits}
Ulimit_On_Mininet
SSHLibrary.Open_Connection ${TOOLS_SYSTEM_IP}
- Utils.Flexible_Mininet_Login
+ SSHKeywords.Flexible_Mininet_Login
${limits} = SSHLibrary.Execute_Command bash -c "ulimit -a"
BuiltIn.Log ${limits}
DiskFree_On_Controller
SSHLibrary.Open_Connection ${ODL_SYSTEM_IP}
- Utils.Flexible_Controller_Login
+ SSHKeywords.Flexible_Controller_Login
${sizes} = SSHLibrary.Execute_Command bash -c "df -h"
BuiltIn.Log ${sizes}
DiskFree_On_Mininet
SSHLibrary.Open_Connection ${TOOLS_SYSTEM_IP}
- Utils.Flexible_Mininet_Login
+ SSHKeywords.Flexible_Mininet_Login
${sizes} = SSHLibrary.Execute_Command bash -c "df -h"
BuiltIn.Log ${sizes}