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
This commit is contained in:
Ihar Hrachyshka 2017-03-08 12:52:52 +00:00
parent 46b56751f0
commit a38b8c9dc3
1 changed files with 45 additions and 0 deletions

View File

@ -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',