X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=csit%2Flibraries%2FKarafKeywords.robot;h=449b762034911e568460f471865081c1e8762ef0;hb=7d51336396631866c6aad886a2153b1805a9e92a;hp=d602683fb4d7874ce4344c3303b7265f8fbd8d05;hpb=e7546dda2b483c5f05badb6e6d013449ac6d727c;p=integration%2Ftest.git diff --git a/csit/libraries/KarafKeywords.robot b/csit/libraries/KarafKeywords.robot index d602683fb4..449b762034 100644 --- a/csit/libraries/KarafKeywords.robot +++ b/csit/libraries/KarafKeywords.robot @@ -6,45 +6,45 @@ Variables ../variables/Variables.py *** Variables *** ${WORKSPACE} /tmp -${BUNDLEFOLDER} distribution-karaf-0.3.0-SNAPSHOT ${KarafKeywords__karaf_connection_index} -1 *** Keywords *** Verify Feature Is Installed - [Arguments] ${feature_name} ${controller}=${CONTROLLER} ${karaf_port}=${KARAF_SHELL_PORT} + [Arguments] ${feature_name} ${controller}=${ODL_SYSTEM_IP} ${karaf_port}=${KARAF_SHELL_PORT} [Documentation] Will Succeed if the given ${feature_name} is found in the output of "feature:list -i" ${output}= Issue Command On Karaf Console feature:list -i | grep ${feature_name} ${controller} ${karaf_port} Should Contain ${output} ${feature_name} [Return] ${output} -Verify Feature Is Not Installed - [Arguments] ${feature_name} ${controller}=${CONTROLLER} ${karaf_port}=${KARAF_SHELL_PORT} - [Documentation] Will Succeed if the given ${feature_name} is NOT found in the output of "feature:list -i" - ${output}= Issue Command On Karaf Console feature:list -i | grep ${feature_name} ${controller} ${karaf_port} - Should Not Contain ${output} ${feature_name} - [Return] ${output} - Issue Command On Karaf Console - [Arguments] ${cmd} ${controller}=${CONTROLLER} ${karaf_port}=${KARAF_SHELL_PORT} ${timeout}=5 - [Documentation] Will execute the given ${cmd} by ssh'ing to the karaf console running on ${CONTROLLER} + [Arguments] ${cmd} ${controller}=${ODL_SYSTEM_IP} ${karaf_port}=${KARAF_SHELL_PORT} ${timeout}=5 ${loglevel}=INFO + [Documentation] Will execute the given ${cmd} by ssh'ing to the karaf console running on ${ODL_SYSTEM_IP} ... Note that this keyword will open&close new SSH connection, without switching back to previously current session. Open Connection ${controller} port=${karaf_port} prompt=${KARAF_PROMPT} timeout=${timeout} - Login ${KARAF_USER} ${KARAF_PASSWORD} + Login ${KARAF_USER} ${KARAF_PASSWORD} loglevel=${loglevel} Write ${cmd} ${output} Read Until ${KARAF_PROMPT} Close Connection Log ${output} [Return] ${output} +Check For Elements On Karaf Command Output Message + [Arguments] ${cmd} ${elements} ${controller}=${ODL_SYSTEM_IP} ${karaf_port}=${KARAF_SHELL_PORT} ${timeout}=5 + [Documentation] Will execute the command using Issue Command On Karaf Console then check for the given elements + ... in the command output message + ${output} Issue Command On Karaf Console ${cmd} ${controller} ${karaf_port} ${timeout} + : FOR ${i} IN @{elements} + \ Should Contain ${output} ${i} + Verify Bundle Is Installed - [Arguments] ${bundle_name} ${controller}=${CONTROLLER} ${karaf_port}=${KARAF_SHELL_PORT} + [Arguments] ${bundle_name} ${controller}=${ODL_SYSTEM_IP} ${karaf_port}=${KARAF_SHELL_PORT} [Documentation] Will succeed if the given ${bundle name} is present in the output of "bundle:list -s " ${output}= Issue Command On Karaf Console bundle:list -s | grep ${bundle_name} ${controller} ${karaf_port} Should Contain ${output} ${bundle_name} [Return] ${output} Verify Bundle Is Not Installed - [Arguments] ${bundle_name} ${controller}=${CONTROLLER} ${karaf_port}=${KARAF_SHELL_PORT} + [Arguments] ${bundle_name} ${controller}=${ODL_SYSTEM_IP} ${karaf_port}=${KARAF_SHELL_PORT} [Documentation] Will succeed if the given ${bundle_name} is NOT found in the output of "bundle:list -s" ${output}= Issue Command On Karaf Console bundle:list -i | grep ${bundle_name} ${controller} ${karaf_port} Should Not Contain ${output} ${bundle_name} @@ -59,14 +59,14 @@ Check Karaf Log Has Messages [Return] ${output} Check Karaf Log File Does Not Have Messages - [Arguments] ${ip} ${message} ${user}=${CONTROLLER_USER} ${password}=${CONTROLLER_PASSWORD} ${prompt}=${DEFAULT_LINUX_PROMPT} ${log_file}=${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf.log + [Arguments] ${ip} ${message} ${user}=${ODL_SYSTEM_USER} ${password}=${ODL_SYSTEM_PASSWORD} ${prompt}=${DEFAULT_LINUX_PROMPT} ${log_file}=${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf.log [Documentation] Fails if the provided ${message} is found in the karaf.log file. Uses grep to search. The ... karaf.log file can be overridden with ${log_file} to be any file on the given system @ ${ip} ${output}= Run Command On Controller ${ip} grep -c '${message}' ${log_file} user=${user} password=${password} prompt=${prompt} Should Be Equal As Strings ${output} 0 Install a Feature - [Arguments] ${feature_name} ${controller}=${CONTROLLER} ${karaf_port}=${KARAF_SHELL_PORT} ${timeout}=15 + [Arguments] ${feature_name} ${controller}=${ODL_SYSTEM_IP} ${karaf_port}=${KARAF_SHELL_PORT} ${timeout}=180 [Documentation] Will Install the given ${feature_name} Log ${timeout} ${output}= Issue Command On Karaf Console feature:install ${feature_name} ${controller} ${karaf_port} ${timeout} @@ -74,7 +74,7 @@ Install a Feature [Return] ${output} Uninstall a Feature - [Arguments] ${feature_name} ${controller}=${CONTROLLER} ${karaf_port}=${KARAF_SHELL_PORT} ${timeout}=15 + [Arguments] ${feature_name} ${controller}=${ODL_SYSTEM_IP} ${karaf_port}=${KARAF_SHELL_PORT} ${timeout}=180 [Documentation] Will UnInstall the given ${feature_name} ${output}= Issue Command On Karaf Console feature:uninstall ${feature_name} ${controller} ${karaf_port} ${timeout} Log ${output} @@ -110,11 +110,11 @@ Restore Current SSH Connection From Index Open Controller Karaf Console On Background [Documentation] Connect to the controller's karaf console, but do not switch to it. ${current_ssh_connection}= SSHLibrary.Get Connection - SSHLibrary.Open Connection ${CONTROLLER} port=${KARAF_SHELL_PORT} prompt=${KARAF_DETAILED_PROMPT} + SSHLibrary.Open Connection ${ODL_SYSTEM_IP} port=${KARAF_SHELL_PORT} prompt=${KARAF_DETAILED_PROMPT} ${karaf_connection}= SSHLibrary.Get Connection SSHLibrary.Login ${KARAF_USER} ${KARAF_PASSWORD} BuiltIn.Set Suite Variable ${KarafKeywords__karaf_connection_index} ${karaf_connection.index} - Restore Current SSH Connection From Index ${current_ssh_connection.index} + [Teardown] Restore Current SSH Connection From Index ${current_ssh_connection.index} Configure Timeout For Karaf Console [Arguments] ${timeout} @@ -122,7 +122,7 @@ Configure Timeout For Karaf Console BuiltIn.Run Keyword If ${KarafKeywords__karaf_connection_index} == -1 Fail Need to connect to a Karaf Console first ${current_connection_index}= SSHLibrary.Switch Connection ${KarafKeywords__karaf_connection_index} SSHLibrary.Set_Client_Configuration timeout=${timeout} - Restore Current SSH Connection From Index ${current_connection_index} + [Teardown] Restore Current SSH Connection From Index ${current_connection_index} Execute Controller Karaf Command On Background [Arguments] ${command} @@ -132,10 +132,10 @@ Execute Controller Karaf Command On Background ${current_connection_index}= SSHLibrary.Switch Connection ${KarafKeywords__karaf_connection_index} ${status_write} ${message_write}= BuiltIn.Run Keyword And Ignore Error SSHLibrary.Write ${command} ${status_wait} ${message_wait}= BuiltIn.Run Keyword And Ignore Error SSHLibrary.Read Until Prompt - Restore Current SSH Connection From Index ${current_connection_index} BuiltIn.Run Keyword If '${status_write}' != 'PASS' BuiltIn.Fail Failed to send the command: ${command} BuiltIn.Log ${message_wait} BuiltIn.Run Keyword If '${status_wait}' != 'PASS' BuiltIn.Fail Failed to see prompt after sending the command: ${command} + [Teardown] Restore Current SSH Connection From Index ${current_connection_index} [Return] ${message_wait} Execute Controller Karaf Command With Retry On Background @@ -173,7 +173,7 @@ Wait For Karaf Log [Arguments] ${message} ${timeout}=60 [Documentation] Read karaf logs until message appear Log Waiting for '${message}' in karaf log - Open Connection ${CONTROLLER} port=${KARAF_SHELL_PORT} prompt=${KARAF_PROMPT} timeout=${timeout} + Open Connection ${ODL_SYSTEM_IP} port=${KARAF_SHELL_PORT} prompt=${KARAF_PROMPT} timeout=${timeout} Flexible SSH Login ${KARAF_USER} ${KARAF_PASSWORD} Write log:tail Read Until ${message}