From a38b8c9dc336d5c67f308c38dc333313a4380289 Mon Sep 17 00:00:00 2001 From: Ihar Hrachyshka Date: Wed, 8 Mar 2017 12:52:52 +0000 Subject: [PATCH] Configure api_extensions to test for neutron If we don't, the default 'all' is used, which means tempest executes all tests irrespective of whether the setup supports all those extensions, or not. For example, trunk service plugin is not enabled by the repo; neither port_security ml2 extension driver is. If a test that requires any of those features land in tempest repo, the gate will immediately break. Actually, tempest already has some tests for port_security, but they are not executed at the moment by the virtue of a special port_security config option that is False by default. That may change in the future [1]. It's good practice to explicitly configure the list of extensions that are known to work for the setup in question. [1] I471575bdc106e1a6d1ecdb313dbe77b4102d8f15 Change-Id: I323ff03c5798a41de4870ed99e71ed5a9456a6af Depends-On: I31105600dfd5632ec4341b35ca3e8a13af3bb945 --- manifests/tempest.pp | 45 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) diff --git a/manifests/tempest.pp b/manifests/tempest.pp index 99b8bb44f..ea1ac8da5 100644 --- a/manifests/tempest.pp +++ b/manifests/tempest.pp @@ -92,6 +92,11 @@ # (optional) Define if Encrypted Volumes need to be tested. # Default to false. # +# [*neutron_api_extensions*] +# (optional) Define list of neutron API extensions to test. +# The list is known to work with the repo; this reflects extensions enabled +# in neutron gate, for the most part (minus features not configured like +# trunk, dns-integration, qos, or port_security support) class openstack_integration::tempest ( $aodh = false, $ceilometer = false, @@ -116,6 +121,45 @@ class openstack_integration::tempest ( $vitrage = false, $zaqar = false, $attach_encrypted_volume = false, + $neutron_api_extensions = [ + 'address-scope', + 'agent', + 'allowed-address-pairs', + 'auto-allocated-topology', + 'availability_zone', + 'binding', + 'default-subnetpools', + 'dhcp_agent_scheduler', + 'dvr', + 'ext-gw-mode,external-net', + 'extra_dhcp_opt', + 'extraroute', + 'flavors', + 'l3-flavors', + 'l3-ha', + 'l3_agent_scheduler', + 'metering', + 'multi-provider', + 'net-mtu', + 'network-ip-availability', + 'network_availability_zone', + 'pagination', + 'project-id', + 'provider', + 'quotas', + 'rbac-policies', + 'router', + 'router_availability_zone', + 'security-group', + 'service-type', + 'sorting', + 'standard-attr-description', + 'standard-attr-revisions', + 'standard-attr-timestamp', + 'subnet_allocation', + 'tag', + 'tag-ext', + ], ) { include ::openstack_integration::config @@ -176,6 +220,7 @@ class openstack_integration::tempest ( ec2api_available => $ec2api, watcher_available => $watcher, public_network_name => 'public', + neutron_api_extensions => join(any2array($neutron_api_extensions), ','), dashboard_url => $::openstack_integration::config::base_url, flavor_ref => '42', flavor_ref_alt => '84',