${external_gateway} 10.10.10.250
${external_subnet_allocation_pool} start=10.10.10.2,end=10.10.10.249
${external_subnet} 10.10.10.0/24
-${default_timeout} 420s
+${TEMPEST_TIMEOUT} 420s
+${OS_CNTL_CONN_ID} None
+${OS_CMP1_CONN_ID} None
+${OS_CMP2_CONN_ID} None
*** Keywords ***
Run Tempest Tests
- [Arguments] ${tempest_regex} ${timeout}=${default_timeout} ${debug}=False
+ [Arguments] ${tempest_regex} ${timeout}=${TEMPEST_TIMEOUT} ${debug}=False
Run Keyword If "${debug}"=="False" Run Tempest Tests Without Debug ${tempest_regex} timeout=${timeout}
Run Keyword If "${debug}"=="True" Run Tempest Tests With Debug ${tempest_regex} timeout=${timeout}
Run Keyword If "${debug}"!="True" and "${debug}"!="False" Fail debug argument must be True or False
Run Tempest Tests Without Debug
- [Arguments] ${tempest_regex} ${tempest_directory}=${tempest_dir} ${timeout}=${default_timeout}
+ [Arguments] ${tempest_regex} ${tempest_directory}=${tempest_dir} ${timeout}=${TEMPEST_TIMEOUT}
[Documentation] Using ostestr will allow us to (by default) run tests in paralllel.
... Because of the parallel fashion, we must ensure there is no pause on teardown so that flag in tempest.conf is
... explicitly set to False.
Should Contain ${output} Failed: 0
Run Tempest Tests With Debug
- [Arguments] ${tempest_regex} ${tempest_directory}=${tempest_dir} ${timeout}=${default_timeout}
+ [Arguments] ${tempest_regex} ${tempest_directory}=${tempest_dir} ${timeout}=${TEMPEST_TIMEOUT}
[Documentation] After setting pause_teardown=True in tempest.conf, use the python -m testtools.run module to execute
... a single tempest test case. We need to run only one tempest test case at a time as there will
... be potentional for an unkown number of debug pdb() prompts to catch and continue if we are running multiple
Should Contain ${output} OK
Should Not Contain ${output} FAILED
+Suite Setup
+ OpenStackOperations.OpenStack Suite Setup
+ Log In To Tempest Executor And Setup Test Environment
+
Log In To Tempest Executor And Setup Test Environment
[Documentation] Initialize SetupUtils, open SSH connection to a devstack system and source the openstack
... credentials needed to run the tempest tests. The (sometimes empty) tempest blacklist file will be created
... and pushed to the tempest executor.
Create Blacklist File
- SetupUtils.Setup_Utils_For_Setup_And_Teardown
- # source_pwd is expected to exist in the below Create Network, Create Subnet keywords. Might be a bug.
- ${source_pwd} Set Variable yes
- Set Suite Variable ${source_pwd}
# Tempest tests need an existing external network in order to create routers.
Create Network ${external_net_name} --external --default --provider-network-type flat --provider-physical-network ${PUBLIC_PHYSICAL_NETWORK}
Create Subnet ${external_net_name} ${external_subnet_name} ${external_subnet} --gateway ${external_gateway} --allocation-pool ${external_subnet_allocation_pool}
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}
+ ${net_id}= Get Net Id ${external_net_name}
Tempest Conf Add External Network And Floating Network Name ${net_id}
Tempest Conf Add External Network And Floating Network Name
Log File ${blacklist_file}
SSHKeywords.Copy File To Remote System ${OS_CONTROL_NODE_IP} ${blacklist_file} ${blacklist_file}
+Open Connection
+ [Arguments] ${name} ${ip}
+ ${conn_id} = SSHLibrary.Open Connection ${ip} prompt=${DEFAULT_LINUX_PROMPT}
+ SSHKeywords.Flexible SSH Login ${OS_USER} ${DEVSTACK_SYSTEM_PASSWORD}
+ BuiltIn.Set Suite Variable \${${name}} ${conn_id}
+ [Return] ${conn_id}
+
Devstack Suite Setup
- [Arguments] ${source_pwd}=no ${odl_ip}=${ODL_SYSTEM_IP}
- [Documentation] Login to the Openstack Control Node to run tempest suite
+ [Arguments] ${odl_ip}=${ODL_SYSTEM_IP}
+ [Documentation] Open connections to the nodes
Create Session session http://${odl_ip}:${RESTCONFPORT} auth=${AUTH} headers=${HEADERS}
- ${devstack_conn_id}= SSHLibrary.Open Connection ${OS_CONTROL_NODE_IP} prompt=${DEFAULT_LINUX_PROMPT}
- Set Suite Variable ${devstack_conn_id}
- Set Suite Variable ${source_pwd}
- Log ${devstack_conn_id}
- SSHKeywords.Flexible SSH Login ${OS_USER} ${DEVSTACK_SYSTEM_PASSWORD}
- SSHLibrary.Set Client Configuration timeout=${default_devstack_prompt_timeout}
+ SSHLibrary.Set Default Configuration timeout=${default_devstack_prompt_timeout}
+ Run Keyword If 0 < ${NUM_OS_SYSTEM} Open Connection OS_CNTL_CONN_ID ${OS_CONTROL_NODE_IP}
+ Run Keyword If 1 < ${NUM_OS_SYSTEM} Open Connection OS_CMP1_CONN_ID ${OS_COMPUTE_1_IP}
+ Run Keyword If 2 < ${NUM_OS_SYSTEM} Open Connection OS_CMP2_CONN_ID ${OS_COMPUTE_2_IP}
Write Commands Until Prompt
[Arguments] ${cmd} ${timeout}=${default_devstack_prompt_timeout}