Cleanup DevstackUtils.robot
[integration/test.git] / csit / suites / openstack / tempest / tempest.robot
index d55c1690ce149a19f0d96dc782573ffd6deac14a..3c2ced2f42c4dfb838bc794ee157cc32e88043c4 100644 (file)
@@ -1,81 +1,96 @@
 *** Settings ***
 Documentation     Test suite for running tempest tests. It is assumed that the test environment
 ...               is already deployed and ready.
-Suite Setup       Log In To Tempest Executor And Setup Test Environment
-Suite Teardown    Clean Up After Running Tempest
-Test Setup        Log Testcase Start To Controller Karaf
+Suite Setup       Tempest.Suite Setup
+Suite Teardown    OpenStackOperations.OpenStack Suite Teardown
+Test Setup        SetupUtils.Setup_Test_With_Logging_And_Without_Fast_Failing
+Test Teardown     OpenStackOperations.Get Test Teardown Debugs
+Test Template     Tempest.Run Tempest Tests
+Library           OperatingSystem
 Library           SSHLibrary
-Resource          ../../../libraries/Utils.robot
 Resource          ../../../libraries/DevstackUtils.robot
-Variables         ../../../variables/Variables.py
-
-*** Variables ***
-${exclusion_regex}    'metering|test_l3_agent_scheduler.L3AgentSchedulerTestJSON|test_extensions.ExtensionsTestJSON.test_list_show_extensions'
-${tempest_config_file}    ./tempest.conf
+Resource          ../../../libraries/OpenStackOperations.robot
+Resource          ../../../libraries/SetupUtils.robot
+Resource          ../../../libraries/SSHKeywords.robot
+Resource          ../../../libraries/Tempest.robot
+Resource          ../../../variables/Variables.robot
+Resource          ../../../variables/netvirt/Variables.robot
 
 *** Test Cases ***
 tempest.api.network
-    Run Tempest Tests    ${TEST_NAME}    ${exclusion_regex}    ${tempest_config_file}
-
-tempest.scenario.test_minimum_basic
-    [Tags]    exclude
-    Run Tempest Tests    ${TEST_NAME}
-
-*** Keywords ***
-Log In To Tempest Executor And Setup Test Environment
-    [Documentation]    Open SSH connection to a devstack system and source the openstack
-    ...    credentials needed to run the tempest tests
-    # 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 network.api tests need an existing external network in order to create
-    # routers against.    Creating that here.
-    Create Network    external --router:external=True
-    Create Subnet    external    external-subnet    10.0.0.0/24
-    List Networks
-    ${control_node_conn_id}=    SSHLibrary.Open Connection    ${OS_CONTROL_NODE_IP}    prompt=${DEFAULT_LINUX_PROMPT_STRICT}
-    Utils.Flexible SSH Login    ${OS_USER}
-    Write Commands Until Prompt    source ${DEVSTACK_DEPLOY_PATH}/openrc admin admin
-    ${net_id}=    Get Net Id    external    ${control_node_conn_id}
-    Generate Tempest Conf File    ${net_id}
-
-Generate Tempest Conf File
-    [Arguments]    ${external_network_id}
-    [Documentation]    Tempest will be run with a config file ./tempest.conf. That file needs to be auto
-    ...    generated first, then updated with the current openstack info, including the specific external
-    ...    network id. There was trouble with permissions in upstream CI, so everything is done with sudo
-    ...    and even the tempest.conf is changed to 777 permissions.
-    Write Commands Until Prompt    source ${DEVSTACK_DEPLOY_PATH}/openrc admin admin
-    Write Commands Until Prompt    cd /opt/stack/tempest
-    Write Commands Until Prompt    sudo -E oslo-config-generator --config-file $(find . -name config-generator.tempest.conf) --output-file ${tempest_config_file}
-    # TODO: the below set of configs may not all be neccessary, so we could try to trim out what's not needed.
-    Add Config To File On Existing SSH Connection    ${tempest_config_file}    service_available    neutron    true
-    Add Config To File On Existing SSH Connection    ${tempest_config_file}    identity    catalog_type    identity
-    Add Config To File On Existing SSH Connection    ${tempest_config_file}    identity    uri    http://localhost:5000/v2.0
-    Add Config To File On Existing SSH Connection    ${tempest_config_file}    identity    uri_v3    http://localhost:8774/v3
-    Add Config To File On Existing SSH Connection    ${tempest_config_file}    identity    auth_version    v2
-    Add Config To File On Existing SSH Connection    ${tempest_config_file}    identity    v2_admin_endpoint_type    adminURL
-    Add Config To File On Existing SSH Connection    ${tempest_config_file}    identity    username    $OS_USERNAME
-    Add Config To File On Existing SSH Connection    ${tempest_config_file}    identity    admin_role    admin
-    Add Config To File On Existing SSH Connection    ${tempest_config_file}    identity    password    $OS_PASSWORD
-    Add Config To File On Existing SSH Connection    ${tempest_config_file}    auth    admin_username    $OS_USERNAME
-    Add Config To File On Existing SSH Connection    ${tempest_config_file}    auth    admin_project_name    $OS_TENANT_NAME
-    Add Config To File On Existing SSH Connection    ${tempest_config_file}    auth    admin_password    $OS_PASSWORD
-    Add Config To File On Existing SSH Connection    ${tempest_config_file}    network    public_network_id    ${external_network_id}
-    Add Config To File On Existing SSH Connection    ${tempest_config_file}    DEFAULT    verbose    true
-    Write Commands Until Prompt    sudo cat ./tempest.conf
-    Write Commands Until Prompt    sudo chmod 777 ./tempest.conf
-
-Add Config To File On Existing SSH Connection
-    [Arguments]    ${config_file}    ${config_section}    ${config_key}    ${config_value}
-    [Documentation]    uses crudini to populate oslo cofg file.
-    # this keyword is only one line so seems like extra overhead, but this may be a good candidate to move
-    # to a library at some point, when/if other suites need to use it, so wanted to make it generic.
-    Write Commands Until Prompt    sudo -E crudini --set ${config_file} ${config_section} ${config_key} ${config_value}
-
-Clean Up After Running Tempest
-    [Documentation]    Clean up any extra leftovers that were created to allow tempest tests to run.
-    Delete SubNet     external-subnet
-    Delete Network    external
-    List Networks
-    Close All Connections
\ No newline at end of file
+    ${TEST_NAME}    debug=False    timeout=1200s
+
+tempest.scenario.test_aggregates_basic_ops.TestAggregatesBasicOps.test_aggregate_basic_ops
+    ${TEST_NAME}    debug=True
+
+tempest.scenario.test_network_advanced_server_ops.TestNetworkAdvancedServerOps.test_server_connectivity_pause_unpause
+    ${TEST_NAME}    debug=True
+
+tempest.scenario.test_network_advanced_server_ops.TestNetworkAdvancedServerOps.test_server_connectivity_reboot
+    ${TEST_NAME}    debug=True
+
+tempest.scenario.test_network_advanced_server_ops.TestNetworkAdvancedServerOps.test_server_connectivity_rebuild
+    ${TEST_NAME}    debug=True
+
+tempest.scenario.test_network_advanced_server_ops.TestNetworkAdvancedServerOps.test_server_connectivity_stop_start
+    ${TEST_NAME}    debug=True
+
+tempest.scenario.test_network_advanced_server_ops.TestNetworkAdvancedServerOps.test_server_connectivity_suspend_resume
+    ${TEST_NAME}    debug=True
+
+tempest.scenario.test_network_basic_ops.TestNetworkBasicOps.test_connectivity_between_vms_on_different_networks
+    ${TEST_NAME}    debug=True
+
+tempest.scenario.test_network_basic_ops.TestNetworkBasicOps.test_hotplug_nic
+    ${TEST_NAME}    debug=True
+
+tempest.scenario.test_network_basic_ops.TestNetworkBasicOps.test_mtu_sized_frames
+    ${TEST_NAME}    debug=True
+
+tempest.scenario.test_network_basic_ops.TestNetworkBasicOps.test_network_basic_ops
+    ${TEST_NAME}    debug=True
+
+tempest.scenario.test_network_basic_ops.TestNetworkBasicOps.test_port_security_macspoofing_port
+    ${TEST_NAME}    debug=True
+
+tempest.scenario.test_network_basic_ops.TestNetworkBasicOps.test_preserve_preexisting_port
+    ${TEST_NAME}    debug=True
+
+tempest.scenario.test_network_basic_ops.TestNetworkBasicOps.test_router_rescheduling
+    ${TEST_NAME}    debug=True
+
+tempest.scenario.test_network_basic_ops.TestNetworkBasicOps.test_subnet_details
+    ${TEST_NAME}    debug=True
+
+tempest.scenario.test_network_v6.TestGettingAddress.test_dhcp6_stateless_from_os
+    ${TEST_NAME}    debug=True
+
+tempest.scenario.test_network_v6.TestGettingAddress.test_dualnet_dhcp6_stateless_from_os
+    ${TEST_NAME}    debug=True
+
+tempest.scenario.test_network_v6.TestGettingAddress.test_dualnet_slaac_from_os
+    ${TEST_NAME}    debug=True
+
+tempest.scenario.test_network_v6.TestGettingAddress.test_slaac_from_os
+    ${TEST_NAME}    debug=True
+
+tempest.scenario.test_security_groups_basic_ops.TestSecurityGroupsBasicOps.test_boot_into_disabled_port_security_network_without_secgroup
+    ${TEST_NAME}    debug=True
+
+tempest.scenario.test_security_groups_basic_ops.TestSecurityGroupsBasicOps.test_cross_tenant_traffic
+    ${TEST_NAME}    debug=True
+
+tempest.scenario.test_security_groups_basic_ops.TestSecurityGroupsBasicOps.test_in_tenant_traffic
+    ${TEST_NAME}    debug=True
+
+tempest.scenario.test_security_groups_basic_ops.TestSecurityGroupsBasicOps.test_multiple_security_groups
+    ${TEST_NAME}    debug=True
+
+tempest.scenario.test_security_groups_basic_ops.TestSecurityGroupsBasicOps.test_port_security_disable_security_group
+    ${TEST_NAME}    debug=True
+
+tempest.scenario.test_security_groups_basic_ops.TestSecurityGroupsBasicOps.test_port_update_new_security_group
+    ${TEST_NAME}    debug=True
+
+tempest.scenario.test_server_basic_ops.TestServerBasicOps.test_server_basic_ops
+    ${TEST_NAME}    debug=True