# Licensed under the Apache License, Version 2.0 (the "License"); you may # not use this file except in compliance with the License. You may obtain # a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, WITHOUT # WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the # License for the specific language governing permissions and limitations # under the License. # # This script is executed in the OpenStack CI *tempest-dsvm-cells job. # It's used to configure which tempest tests actually get run. You can find # the CI job configuration here: # # http://git.openstack.org/cgit/openstack-infra/project-config/tree/jenkins/jobs/devstack-gate.yaml # # NOTE(sdague): tempest (because of testr) only supports and additive # regex for specifying test selection. As such this is a series of # negative assertions ?: for strings. # # Being a regex, an unescaped '.' matches any character, so those # should be escaped. There is no need to specify .* at the end of a # pattern, as it's handled by the final match. # Test idempotent ids are used for specific tests because # these are unchanged if the test name changes. # Construct a regex to use when limiting scope of tempest # to avoid features unsupported by Nova Cells. r="^(?!.*" # skip security group tests r="$r(?:tempest\.api\.compute\.security_groups)" # skip aggregates tests r="$r|(?:tempest\.api\.compute\.admin\.test_aggregates)" r="$r|(?:tempest\.scenario\.test_aggregates_basic_ops)" # skip availability zone tests r="$r|(?:(tempest\.api\.compute\.)(servers\.|admin\.)(test_availability_zone*))" # skip fixed-ip tests r="$r|(?:tempest\.api\.compute\.admin\.test_fixed_ips)" # skip floating-ip tests r="$r|(?:tempest\.api\.compute\.floating_ips)" # https://bugs.launchpad.net/tempest/+bug/1513983 - The follow scenario tests rely on Neutron but use floating IPs # tempest.scenario.test_network_advanced_server_ops.TestNetworkAdvancedServerOps.test_server_connectivity_pause_unpause r="$r|(?:.*id\-2b2642db\-6568\-4b35\-b812\-eceed3fa20ce.*)" # tempest.scenario.test_network_basic_ops.TestNetworkBasicOps.test_network_basic_ops r="$r|(?:.*id\-f323b3ba\-82f8\-4db7\-8ea6\-6a895869ec49.*)" # tempest.scenario.test_network_basic_ops.TestNetworkBasicOps.test_update_router_admin_state r="$r|(?:.*id\-04b9fe4e\-85e8\-4aea\-b937\-ea93885ac59f.*)" # tempest.scenario.test_network_v6.TestGettingAddress.test_slaac_from_os r="$r|(?:.*id\-2c92df61\-29f0\-4eaa\-bee3\-7c65bef62a43.*)" # tempest.scenario.test_security_groups_basic_ops.TestSecurityGroupsBasicOps.test_cross_tenant_traffic r="$r|(?:.*id\-e79f879e\-debb\-440c\-a7e4\-efeda05b6848.*)" # exclude the slow tag r="$r|(?:.*\[.*\bslow\b.*\])" # skip current regressions; when adding new entries to this list, add the bug # reference with it since this list should shrink # NOTE(mriedem): Resize tests are skipped in devstack until custom flavors # in devstack used in Tempest runs are synced to the cells database. # NOTE(mriedem): Rescue tests are skipped in devstack. They rely on floating # IPs and security groups, and rescue might not work with cells v1 anyway due # to synchronization issues. # tempest.api.compute.admin.test_networks.NetworksTest.test_get_network)" r="$r|(?:.*id\-d206d211\-8912\-486f\-86e2\-a9d090d1f416.*)" # tempest.api.compute.admin.test_networks.NetworksTest.test_list_all_networks)" r="$r|(?:.*id\-df3d1046\-6fa5\-4b2c\-ad0c\-cfa46a351cb9.*)" # tempest.api.compute.servers.test_create_server.ServersTestJSON.test_create_server_with_scheduler_hint_group r="$r|(?:.*id\-ed20d3fb\-9d1f\-4329\-b160\-543fbd5d9811.*)" # tempest.api.compute.servers.test_virtual_interfaces.VirtualInterfacesTestJSON.test_list_virtual_interfaces r="$r|(?:.*id\-96c4e2ef\-5e4d\-4d7f\-87f5\-fed6dca18016.*)" # tempest.api.compute.test_networks.ComputeNetworksTest.test_list_networks r="$r|(?:.*id\-3fe07175\-312e\-49a5\-a623\-5f52eeada4c2.*)" # tempest.scenario.test_minimum_basic.TestMinimumBasicScenario.test_minimum_basic_scenario r="$r|(?:.*id\-bdbb5441\-9204\-419d\-a225\-b4fdbfb1a1a8.*)" # tempest.scenario.test_encrypted_cinder_volumes.TestEncryptedCinderVolumes.test_encrypted_cinder_volumes_cryptsetup r="$r|(?:.*id\-cbc752ed\-b716\-4717\-910f\-956cce965722.*)" # tempest.scenario.test_encrypted_cinder_volumes.TestEncryptedCinderVolumes.test_encrypted_cinder_volumes_luks r="$r|(?:.*id\-79165fb4\-5534\-4b9d\-8429\-97ccffb8f86e.*)" # tempest.scenario.test_server_basic_ops.TestServerBasicOps.test_server_basicops r="$r|(?:.*id\-7fff3fb3\-91d8\-4fd0\-bd7d\-0204f1f180ba.*)" # tempest.scenario.test_snapshot_pattern.TestSnapshotPattern.test_snapshot_pattern r="$r|(?:.*id\-608e604b\-1d63\-4a82\-8e3e\-91bc665c90b4.*)" # tempest.api.compute.admin.test_hosts.HostsAdminTestJSON.test_show_host_detail r="$r|(?:.*id\-38adbb12\-aee2\-4498\-8aec\-329c72423aa4.*)" # tempest.api.compute.test_tenant_networks.ComputeTenantNetworksTest.test_list_show_tenant_networks r="$r|(?:.*id\-edfea98e\-bbe3\-4c7a\-9739\-87b986baff26.*)" # https://bugs.launchpad.net/nova/+bug/1489581 r="$r|(?:tempest\.scenario\.test_volume_boot_pattern\.)" # https://bugs.launchpad.net/nova/+bug/1466696 - Cells: Race between instance 'unlock' and 'stop' can cause 'stop' to fail # tempest.api.compute.servers.test_server_actions.ServerActionsTestJSON.test_lock_unlock_server r="$r|(?:.*id\-80a8094c\-211e\-440a\-ab88\-9e59d556c7ee.*)" # scheduler hints apparently don't work in devstack cells # tempest.scenario.test_server_multinode.TestServerMultinode.test_schedule_to_all_nodes r="$r|(?:.*id\-9cecbe35\-b9d4\-48da\-a37e\-7ce70aa43d30.*)" # test_stamp_pattern uses security groups which aren't supported in cells v1 # tempest.scenario.test_stamp_pattern.TestStampPattern.test_stamp_pattern r="$r|(?:.*id\-10fd234a\-515c\-41e5\-b092\-8323060598c5.*)" # Bug 1709985: rebuild randomly times out, probably due to sync issues # tempest.api.compute.admin.test_servers.ServersAdminTestJSON.test_rebuild_server_in_error_state r="$r|(?:.*id\-682cb127\-e5bb\-4f53\-87ce\-cb9003604442.*)" # tempest.api.compute.servers.test_disk_config.ServerDiskConfigTestJSON.test_rebuild_server_with_auto_disk_config r="$r|(?:.*id\-9c9fae77\-4feb\-402f\-8450\-bf1c8b609713.*)" # tempest.api.compute.servers.test_disk_config.ServerDiskConfigTestJSON.test_rebuild_server_with_manual_disk_config r="$r|(?:.*id\-bef56b09\-2e8c\-4883\-a370\-4950812f430e.*)" # tempest.api.compute.servers.test_server_actions.ServerActionsTestJSON.test_rebuild_server r="$r|(?:.*id\-aaa6cdf3\-55a7\-461a\-add9\-1c8596b9a07c.*)" # tempest.api.compute.servers.test_servers.ServerShowV247Test.test_update_rebuild_list_server r="$r|(?:.*id\-8de397c2\-57d0\-4b90\-aa30\-e5d668f21a8b.*)" # tempest.api.compute.servers.test_servers_microversions.ServerShowV254Test.test_rebuild_server r="$r|(?:.*id\-09170a98\-4940\-4637\-add7\-1a35121f1a5a.*)" # tempest.api.compute.servers.test_servers_microversions.ServerShowV257Test.test_rebuild_server r="$r|(?:.*id\-803df848\-080a\-4261\-8f11\-b020cd9b6f60.*)" # tempest.api.compute.servers.test_server_actions.ServerActionsTestJSON.test_rebuild_server_in_stop_state r="$r|(?:.*id\-30449a88\-5aff\-4f9b\-9866\-6ee9b17f906d.*)" # NOTE(mriedem): cells v1 api doesn't route os-server-external-events # tempest.api.volume.test_volumes_extend.VolumesExtendAttachedTest.test_extend_attached_volume r="$r|(?:.*id\-301f5a30\-1c6f\-4ea0\-be1a\-91fd28d44354.*)" r="$r).*$" export DEVSTACK_GATE_TEMPEST_REGEX="$r" # Don't run the cells v1 job with ssh validation since it uses floating IPs # by default which cells v1 doesn't support. export DEVSTACK_LOCAL_CONFIG="TEMPEST_RUN_VALIDATION=False"