From 387e2b4fbb4a6d471b83068340c6ab8e5798490a Mon Sep 17 00:00:00 2001 From: Sean Dague Date: Mon, 9 Nov 2015 18:57:35 -0500 Subject: [PATCH] clean up regex in tempest-dsvm-cells-rc The current regex contains a lot of slightly off regex definitions. Most of them don't hurt, and do still match the correct way, but they make people believe that things like the * at the end of matches is important (which it is not). This cleans this up, plus adds a few comments to help people going forward. Change-Id: Ica7fc32fd5a756214db987b95d2305bc74cfb6f1 --- devstack/tempest-dsvm-cells-rc | 74 +++++++++++++++++++--------------- 1 file changed, 41 insertions(+), 33 deletions(-) diff --git a/devstack/tempest-dsvm-cells-rc b/devstack/tempest-dsvm-cells-rc index f7b432bb9097..18c0ba518274 100644 --- a/devstack/tempest-dsvm-cells-rc +++ b/devstack/tempest-dsvm-cells-rc @@ -17,66 +17,74 @@ # # 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. # 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.*)" +r="$r(?:tempest\.api\.compute\.security_groups)" # skip test that requires security groups -r="$r|(?:tempest\.thirdparty\.boto\.test_ec2_instance_run\.InstanceRunTest\.test_compute_with_volumes*)" +r="$r|(?:tempest\.thirdparty\.boto\.test_ec2_instance_run\.InstanceRunTest\.test_compute_with_volumes)" # skip aggregates tests -r="$r|(?:tempest\.api\.compute\.admin\.test_aggregates*)|(?:tempest\.scenario\.test_aggregates_basic_ops*)" +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*)" +r="$r|(?:tempest\.api\.compute\.admin\.test_fixed_ips)" # skip floating-ip tests -r="$r|(?:tempest\.api\.compute\.floating_ips*)" +r="$r|(?:tempest\.api\.compute\.floating_ips)" # 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 -r="$r|(?:tempest\.api\.compute\.admin\.test_networks\.NetworksTest\.test_get_network*)" -r="$r|(?:tempest\.api\.compute\.admin\.test_networks\.NetworksTest\.test_list_all_networks*)" -r="$r|(?:tempest\.api\.compute\.admin\.test_migrations\.MigrationsAdminTest\.test_list_migrations_in_flavor_resize_situation*)" -r="$r|(?:tempest\.api\.compute\.servers\.test_server_actions\.ServerActionsTestJSON\.test_resize_server_confirm*)" -r="$r|(?:tempest\.api\.compute\.servers\.test_server_actions\.ServerActionsTestJSON\.test_resize_server_confirm_from_stopped*)" -r="$r|(?:tempest\.api\.compute\.servers\.test_server_actions\.ServerActionsTestJSON\.test_resize_server_revert*)" -r="$r|(?:tempest\.api\.compute\.servers\.test_server_rescue\.ServerRescueTestJSON*)" -r="$r|(?:tempest\.api\.compute\.servers\.test_disk_config\.ServerDiskConfigTestJSON\.test_resize_server_from_auto_to_manual*)" -r="$r|(?:tempest\.api\.compute\.servers\.test_disk_config\.ServerDiskConfigTestJSON\.test_resize_server_from_manual_to_auto*)" -r="$r|(?:tempest\.api\.compute\.servers\.test_create_server\.ServersTestJSON\.test_create_server_with_scheduler_hint_group*)" -r="$r|(?:tempest\.api\.compute\.servers\.test_create_server\.ServersTestManualDisk\.test_create_server_with_scheduler_hint_group*)" -r="$r|(?:tempest\.api\.compute\.servers\.test_virtual_interfaces\.VirtualInterfacesTestJSON\.test_list_virtual_interfaces*)" -r="$r|(?:tempest\.api\.compute\.test_networks\.ComputeNetworksTest\.test_list_networks*)" -r="$r|(?:tempest\.scenario\.test_minimum_basic\.TestMinimumBasicScenario\.test_minimum_basic_scenario*)" -r="$r|(?:tempest\.api\.compute\.servers\.test_delete_server\.DeleteServersTestJSON\.test_delete_server_while_in_verify_resize_state*)" -r="$r|(?:tempest\.api\.compute\.servers\.test_server_rescue_negative\.ServerRescueNegativeTestJSON*)" -r="$r|(?:tempest\.scenario\.test_encrypted_cinder_volumes\.TestEncryptedCinderVolumes\.test_encrypted_cinder_volumes_cryptsetup*)" -r="$r|(?:tempest\.scenario\.test_encrypted_cinder_volumes\.TestEncryptedCinderVolumes\.test_encrypted_cinder_volumes_luks*)" -r="$r|(?:tempest\.scenario\.test_server_advanced_ops\.TestServerAdvancedOps\.test_resize_server_confirm*)" -r="$r|(?:tempest\.thirdparty\.boto\.test_ec2_network\.EC2NetworkTest\.test_disassociate_not_associated_floating_ip*)" -r="$r|(?:tempest\.scenario\.test_server_basic_ops\.TestServerBasicOps\.test_server_basicops*)" -r="$r|(?:tempest\.scenario\.test_snapshot_pattern\.TestSnapshotPattern\.test_snapshot_pattern*)" -r="$r|(?:tempest\.api\.compute\.admin\.test_hosts\.HostsAdminTestJSON\.test_show_host_detail*)" -r="$r|(?:tempest\.api\.compute\.test_tenant_networks\.ComputeTenantNetworksTest\.test_list_show_tenant_networks*)" +r="$r|(?:tempest\.api\.compute\.admin\.test_networks\.NetworksTest\.test_get_network)" +r="$r|(?:tempest\.api\.compute\.admin\.test_networks\.NetworksTest\.test_list_all_networks)" +r="$r|(?:tempest\.api\.compute\.admin\.test_migrations\.MigrationsAdminTest\.test_list_migrations_in_flavor_resize_situation)" +r="$r|(?:tempest\.api\.compute\.servers\.test_server_actions\.ServerActionsTestJSON\.test_resize_server_confirm)" +r="$r|(?:tempest\.api\.compute\.servers\.test_server_actions\.ServerActionsTestJSON\.test_resize_server_confirm_from_stopped)" +r="$r|(?:tempest\.api\.compute\.servers\.test_server_actions\.ServerActionsTestJSON\.test_resize_server_revert)" +r="$r|(?:tempest\.api\.compute\.servers\.test_server_rescue\.ServerRescueTestJSON)" +r="$r|(?:tempest\.api\.compute\.servers\.test_disk_config\.ServerDiskConfigTestJSON\.test_resize_server_from_auto_to_manual)" +r="$r|(?:tempest\.api\.compute\.servers\.test_disk_config\.ServerDiskConfigTestJSON\.test_resize_server_from_manual_to_auto)" +r="$r|(?:tempest\.api\.compute\.servers\.test_create_server\.ServersTestJSON\.test_create_server_with_scheduler_hint_group)" +r="$r|(?:tempest\.api\.compute\.servers\.test_create_server\.ServersTestManualDisk\.test_create_server_with_scheduler_hint_group)" +r="$r|(?:tempest\.api\.compute\.servers\.test_virtual_interfaces\.VirtualInterfacesTestJSON\.test_list_virtual_interfaces)" +r="$r|(?:tempest\.api\.compute\.test_networks\.ComputeNetworksTest\.test_list_networks)" +r="$r|(?:tempest\.scenario\.test_minimum_basic\.TestMinimumBasicScenario\.test_minimum_basic_scenario)" +r="$r|(?:tempest\.api\.compute\.servers\.test_delete_server\.DeleteServersTestJSON\.test_delete_server_while_in_verify_resize_state)" +r="$r|(?:tempest\.api\.compute\.servers\.test_server_rescue_negative\.ServerRescueNegativeTestJSON)" +r="$r|(?:tempest\.scenario\.test_encrypted_cinder_volumes\.TestEncryptedCinderVolumes\.test_encrypted_cinder_volumes_cryptsetup)" +r="$r|(?:tempest\.scenario\.test_encrypted_cinder_volumes\.TestEncryptedCinderVolumes\.test_encrypted_cinder_volumes_luks)" +r="$r|(?:tempest\.scenario\.test_server_advanced_ops\.TestServerAdvancedOps\.test_resize_server_confirm)" +r="$r|(?:tempest\.thirdparty\.boto\.test_ec2_network\.EC2NetworkTest\.test_disassociate_not_associated_floating_ip)" +r="$r|(?:tempest\.scenario\.test_server_basic_ops\.TestServerBasicOps\.test_server_basicops)" +r="$r|(?:tempest\.scenario\.test_snapshot_pattern\.TestSnapshotPattern\.test_snapshot_pattern)" +r="$r|(?:tempest\.api\.compute\.admin\.test_hosts\.HostsAdminTestJSON\.test_show_host_detail)" +r="$r|(?:tempest\.api\.compute\.test_tenant_networks\.ComputeTenantNetworksTest\.test_list_show_tenant_networks)" # https://bugs.launchpad.net/nova/+bug/1489581 -r="$r|(?:tempest\.scenario\.test_volume_boot_pattern\.*)" +r="$r|(?:tempest\.scenario\.test_volume_boot_pattern\.)" # https://bugs.launchpad.net/nova/+bug/1445628 -r="$r|(?:tempest\.thirdparty\.boto\.test_ec2_instance_run\.InstanceRunTest\.test_run_idempotent_instances*)" +r="$r|(?:tempest\.thirdparty\.boto\.test_ec2_instance_run\.InstanceRunTest\.test_run_idempotent_instances)" # https://bugs.launchpad.net/nova/+bug/1445629 -r="$r|(?:tempest\.api\.compute.servers\.test_disk_config\.ServerDiskConfigTestJSON\.test_rebuild_server_with_manual_disk_config*)" +r="$r|(?:tempest\.api\.compute.servers\.test_disk_config\.ServerDiskConfigTestJSON\.test_rebuild_server_with_manual_disk_config)" # https://bugs.launchpad.net/nova/+bug/1445631 -r="$r|(?:tempest\.api\.compute\.servers\.test_server_actions\.ServerActionsTestJSON\\.test_rebuild_server_in_stop_state*)" +r="$r|(?:tempest\.api\.compute\.servers\.test_server_actions\.ServerActionsTestJSON\.test_rebuild_server_in_stop_state)" # https://bugs.launchpad.net/nova/+bug/1466696 - Cells: Race between instance 'unlock' and 'stop' can cause 'stop' to fail r="$r|(?:tempest\.api\.compute\.servers\.test_server_actions\.ServerActionsTestJSON\.test_lock_unlock_server)" r="$r).*$"