Commit Graph

109 Commits

Author SHA1 Message Date
Zuul 184595e6cc Merge "Add blazar tempest support" 2024-01-11 04:54:21 +00:00
Dmitriy Rabotyagov d5a2c6e5a4 Add blazar tempest support
Change-Id: I4666a7dfc12aed265b646ea093fe39d6cc41a77c
2024-01-05 18:08:48 +00:00
likui 843f1cabd7 Drop deprecated project
panko was deprecated.

[0] https://review.opendev.org/c/openstack/governance/+/850005

Change-Id: I3ca2a489acac075f1b3a032163a27f42279f7733
2023-10-13 14:25:11 +08:00
Damian Dabrowski bb33438d51 Fix dynamic service enablement for octavia and magnum
Dynamic service enablement wasn't fully configured for octavia and
mangum. This patch fixes it.

Change-Id: I187971f694842adc53142c575faa8d054fcd0f81
2022-08-24 18:40:22 +02:00
Damian Dabrowski d1110c3ee8 Use network UUID for floating_network_name
``floating_network_name`` works well with UUIDs as well.

This change doesn't make any difference when tempest creates public
network.

But when it's not, operator does not set ``tempest_public_net_name``
which leaves ``floating_network_name`` with a defeault value.

In order to fix ``floating_network_name`` behavior for both scenarios,
it should be set to the ``tempest_neutron_public_network_id``.

We do the same thing for ``public_network_id``.

Change-Id: I10e0c49b0d89b9530a523e9db79d5c7aa52359a4
2022-07-12 08:39:24 +00:00
Damian Dabrowski 514b0ca612 Fix the behavior of defining fixed_network_name
Currently we define fixed_network_name only when
tempest_create_isolated_networks == False.

It makes things complicated because tempest_create_isolated_networks is
applicable only when dynamic credentials are used.

fixed_network_name should be also defined when dynamic credentials
are not used.

Basically the only scenario when fixed_network_name should not be
defined is using dynamic credentials together with
tempest_create_isolated_networks.

fixed_network_name should be defined in all other cases.

Change-Id: I547d70995de5afbdc84c9f4e86b2599ad4cb100b
2022-07-12 08:39:19 +00:00
Damian Dabrowski 6a7a209c9b Improve domain support
Allow to set domain for admin authentication and dynamically provisioned
accounts.

Currently tempest admin user has to reside in the same domain as
dynamically provisioned accounts.

Change-Id: I1d5aa1f32bae42e2eeeed37588f6ca564563e57a
2022-04-26 16:45:44 +00:00
Damian Dabrowski 7d2083ed0f Fix hardcoded instance_type in [heat_plugin] section
This variable should not be hardcoded.
Setting it to tempest_nova_flavor_id_1 should be a reasonable default.

Change-Id: I11242e55a6925781249afe30f395d16dbeff1c9d
2022-04-26 16:45:39 +00:00
Damian Dabrowski 5f5291416f Do not store unnecessary sections in tempest.conf
tempest.conf should store configuration only for services installed
in the current environment.

Additionally, I removed empty sections and improved their ordering.
Now service sections are placed at the end of the file.

Change-Id: I43c97758b6db2e5e134d8f54e0911ade3ced8fdf
2022-04-26 16:45:32 +00:00
Damian Dabrowski 0566c20d99 Add support for both Credential Provider Mechanisms
Tempest currently has two different internal methods for providing
authentication to tests: dynamic credentials and pre-provisioned credentials.
Depending on which one is in use the configuration of Tempest is slightly
different.
We should provide a support for both of them.

https: //docs.openstack.org/tempest/latest/configuration.html#credential-provider-mechanisms
Change-Id: I26d69caa3f96a530bc0a4a21365404b1a84e489a
2022-04-26 16:45:14 +00:00
Damian Dabrowski 9d50c45bfc Fix hardcoded flavor_ref and flavor_ref_alt
Values for flavor_ref and flavor_ref_alt should be taken from tempest_flavors

Depends-On: https://review.opendev.org/c/openstack/openstack-ansible-os_tempest/+/803477
Change-Id: I96639f606a6469e4bb0658419546f1ebc6576983
2022-04-26 16:44:50 +00:00
Damian Dabrowski f82ea26fcb do not include [*-feature-enabled] sections in tempest.conf
We should not include [*-feature-enabled] sections in tempest.conf and use
``tempest_tempest_conf_overrides`` for these customizations instead.

There is no way we can keep feature list updated all the time and cover all
possible features in defaults/main.yml.
That's why I think we shouldn't cover them here at all.

If we need these customizations for testing purposed(tested it and I think we
don't), we should define them using ``tempest_tempest_conf_overrides`` only for
these tests.

Change-Id: If7d7ca5ae76cb3cb24f95fb9608ce3e1182d5e5a
Depends-On: https://review.opendev.org/c/openstack/openstack-ansible/+/825166
2022-04-14 22:52:04 +02:00
Damian Dabrowski c34cf166de Rename [orchestration] section to [heat_plugin] in tempest.conf
heat-tempest-plugin uses the [heat_plugin] section in tempest.conf

https: //opendev.org/openstack/heat-tempest-plugin
Change-Id: I3f50443b94a5c0e1ebcc566cd268af58561c5e03
2022-01-19 17:35:08 +00:00
Damian Dabrowski 23387a5fbd Implement variable: tempest_endpoint_type
``tempest_endpoint_type`` variable has been implemented to avoid having endpoint type hardcoded in tempest.conf

Change-Id: Id218dcdfa788c184074d15519ac170d938290bd4
2022-01-19 17:32:06 +00:00
Damian Dabrowski 08bacdef7f Do not redefine variables with their default values in tempest.conf
We should keep tempest.conf as simple as it is possible.
These variables do not need to be defined as we point to tempest's default values anyway.

https: //docs.openstack.org/tempest/latest/_static/tempest.conf.sample
Change-Id: Id83775ff91e53dac134eecc789002431659e7d66
2022-01-18 23:10:06 +00:00
Damian Dabrowski 18b2cba8cc Deprecate unnecessary variables
It is really unlikely to change these variables:
``tempest_network_tenant_network_cidr``, ``tempest_network_tenant_network_mask_bits``
and ``tempest_fatal_deprecations``

To keep tempest role as simple as it is possible, we should deprecate them.
They still can be changed using ``tempest_tempest_conf_overrides``.

Change-Id: Ia95f10c3548a5773c286e7d7075b71861fcef28b
2022-01-18 23:54:43 +01:00
Dmitriy Rabotyagov 9b9d8ad489 Extend telemetry testing
Add gnocchi and panko to the available options for tempest testing.

Change-Id: I6a0e6fd644d6c9a0f829ed675a338a1a9e020e27
2021-04-19 18:13:36 +00:00
Dmitriy Rabotyagov 7cec1361a4 Add trove tempest support
Change-Id: Ic137659b550edf3513daefde09e8afe31242dfdd
2021-04-08 15:58:22 +00:00
Jonathan Rosser 049a1aed1e Use ansible_facts[] instead of fact variables
See https://github.com/ansible/ansible/issues/73654

Change-Id: Ic75eac3e27fd542370a04f9bd946d907f0756061
2021-03-01 10:29:57 +00:00
Martin Kopec f82d248332 Remove deprecated scenario image option
Removing deprecated CONF.scenario.img_dir option as it's beeing removed
from Tempest after ~4 year depreation period [1].

Currently tempest is throwing a warning if img_dir is still used.
Both behaviors (img_dir and a full pathin img_file) are supported until
tempest 25.0.0, starting tempest 26.0.0 a full path in
CONF.scenario.img_file config option will have to be specified.

[1] https://review.opendev.org/#/c/710996/

Related-Bug: #1393881
Change-Id: I949cbc6347030461a2daf0658d1ffef1d7aa0e87
2020-07-13 09:17:25 +00:00
Dmitriy Rabotyagov 52ed63aa03 Add zun service to tempest
Add zun tempest plugin installation for source installs
to be able to provide integrated tests.

Change-Id: I920478f705e8821c8bdf18716d873a3618bcfb1d
2020-03-26 14:57:21 +02:00
Zuul 2107505f27 Merge "Add murano service to tempest" 2019-10-24 22:43:50 +00:00
Dmitriy Rabotyagov e1cecea5f0 Fix tempest source install condition
Because of jinja2 templating delimiters inside when statement tempest
wasn't correctly installed from source.
Also condition is simplified to be more readable. install_method check
works as we would like to run venv installation only for source
installs, but not for the ubuntu mixed setup.

Depends-On: https://review.opendev.org/686041
Change-Id: I39332a35fb2edae65a4762fe24c5b1f8c8675a2b
2019-10-01 20:30:55 +00:00
Dmitriy Rabotyagov 3d81e70002 Add murano service to tempest
Add murano tempest plugin installation when murano available.

Change-Id: I6d1d2c42ac74f7e4a980f99e9311787d9f7108b7
2019-09-18 16:32:32 +03:00
Chandan Kumar e9bcf96cbf Use tempest_keystone_interface_insecure var for ssl verification
Currently keystone_service_internaluri_insecure var is used for
doing disabling/enabling ssl, but it comes from os_keystone role
which is not used at all places. It adds a dependency on
os_tempest role to set the value. Moving to a new var allows
use to define one less var in os_tempest.

Change-Id: Id20d13ed3138e39a14a3f8c6a9c11a6c3d3566df
2019-03-26 19:00:42 +05:30
Zuul 84cf23f664 Merge "Enable port security" 2019-01-29 22:29:42 +00:00
Zuul f2f3392031 Merge "Configuration drives don't appear to work on aarch64+kvm." 2019-01-17 22:59:58 +00:00
Dave Wilde (d34dh0r453) 4c0fb1b8df Enable port security
Since we enable port security by default[1] in Neutron we need to let
tempest know to use it.

[1]: 51b654cf57/templates/plugins/ml2/ml2_conf.ini.j2 (L8)

Change-Id: I695d671dd6bf866f844a13e5f47f6f2903497cf2
2019-01-15 10:28:38 -06:00
Michael Vollman da22161c6d Add the manila-tempest-plugin
Adding the manila-tempest-plugin to be used to test the os_manila
ansible role.

Change-Id: I63d9e60fa778983b7ce8340ac5e3c6ffda610343
2018-12-21 09:44:39 -05:00
Paul Martin aca36eb491 Configuration drives don't appear to work on aarch64+kvm.
Tempest testing succeeds without a configuration drive.

Change-Id: I5a884eda6c1ea7961d1ee8f43548346e14437fa0
2018-12-19 14:30:16 +00:00
Jean-Philippe Evrard c5dcd038c7 Overriding default tempest timeouts
Since SPECTRE/MELTDOWN we have lots of tempest timeouts in
our container builds.

This tries to mitigate the effects by increasing the default
delays. Defaults are now doubled.

Change-Id: I0e50535d2400bd891dee0dbc4f2f0df6fa8a40d7
2018-04-24 14:55:15 +00:00
Jonathan Rosser 3e90aa272b Allow public network name to be changed
This can be overridden in the defaults but hardcoded values prevent
the router being created, and floating IP pool being found

Change-Id: I57e4bfb5ab93971a757557e6a68475f2baceace2
2018-04-11 21:55:58 +00:00
Jimmy McCrory 12b0e2d125 Set volume catalog type to volumev3
The cinder v1 API was removed in the queens release. The default
registered catalog type for the latest supported API is volumev3 and
should be used when performing tests against cinder.

Change-Id: Ia181d44ae6c307e5529fce763f700b51990ca5fa
2018-03-27 19:34:40 +00:00
Matthew Thode dde032531f
update for changes needed to pass refstack
Without the image_ref_alt and subnet_allocation fix we pass 98.7%
https://refstack.openstack.org/#/results/218a2d45-e0c7-461a-957e-e5ca4c1271ad

With the following commit we pass 100%
https://refstack.openstack.org/#/results/2d2e8eaa-4cf5-4494-a418-97dbb1fee74a

A second image (image_ref_alt) needs to be uploaded for tests run by
tempest.  subnet_allocation also needs to be added to the list of
plugins in neutron's api_extensions within network-feature-enabled.

This gets us passing refstack in pike (not yet tested for queens or
rocky).

Change-Id: Ia31a8a9c5bac5b3bdbeded25ad9a9f3db2e62007
2018-03-06 13:09:10 -06:00
Jimmy McCrory 960422c5b9 Add task to allow creation of provided roles
Some tempest tests require that a specific role is available for use.
Add a new variable, `tempest_roles`, to allow users to provide a list of
roles to create.

The existing tasks that create the 'reseller_admin' and 'remote_image'
roles have been removed. The correctly named 'ResellerAdmin' role is
already created by the os_swift role and the 'remote_image' is no longer
required since the glance tests make use of an admin user.

Depends-On: I66b7c639494d98fdb3baa52fe56c670e32dea3ce
Change-Id: I7987c5a4dbf50e97322a5b348c3cbd817b2672d6
2017-11-21 23:49:03 +00:00
Jesse Pretorius 5c307f9b20 Use the deployment host to download images for tempest
Currently there are two sets of image downloads happening,
which is a common cause of failure in jobs due to the fact
that they're downloaded from a URL outside of OpenStack-CI.

This patch consolidates them into a single single download,
but also uses the deploy host to do the download. The download
gets done to the same location as where the image is cached
in OpenStack-CI, so as long as the SHA256SUM matches, it
will skip the download - making our tests faster and more
reliable.

As part of this, some legacy and unnecessary variables have
been removed. Also, we were uploading the same image twice
into Glance which is unnecessary. Instead we re-use the same
image ID twice in the tempest configuration.

Change-Id: I8d0afd08f6c80594d69b8d711261ae6365fad917
2017-10-23 10:39:16 +01:00
Jesse Pretorius e33c72c36e Force the use of the new tempest testing method
The old tempest execution method was deprecated in
Newton. We need to shift over to using the new method
which is more reliable and easier to configure.

Change-Id: Idb750cd75f82b4af7cc7c66ce3dca21d2a7066c8
2017-03-06 15:13:10 +00:00
Matt Thompson d4c8ecf824 Add cinder multi-backend tests
This commit updates templates/openstack_tempest_gate.sh.j2 and the
default tempest_test_whitelist to expose a cinder multi-backend test.
This is useful for ensuring that a) multiple backends are operational
(ceph/LVM for instance), while also testing that the multi-backend
features are functional.

NOTE: We also change the tests to use the sahara tempest plugin rather
      than designate as the designate plugin appears to be broken at
      the moment.

Change-Id: I4a730614cfb695b82a79dfbe540396e5f4fd198a
2017-02-23 16:34:33 -05:00
Matt Thompson 28d2535227 Refresh multi-backend variables
This commit removes some deprecated tempest multi-backend variables
(tempest_volume_backend1_name, tempest_volume_backend2_name)
and adds a new variable tempest_volume_backend_names.

Change-Id: Ie62466940f81a96a9e42e237fc2609a98596f156
2017-02-15 17:04:34 -05:00
Andy McCrae a39069eeb9 Fix tempest for os_horizon role
The dashboard vars were not added to tempest.conf, additionally the
login_url var is deprecated and will be removed at some point.

Change-Id: I82bf80df1d0e56dea11b8d1627558c29026179ee
2016-12-16 10:33:27 +00:00
Jonte Watford 9a42e0c707 Updates Tempest.conf.j2
Some options inside the tempest configuration template
have been deprecated. This patch updates the
configuration options in the tempest.conf.j2 file.

Change-Id: I45089992049086300994663e7a088799738dcaf8
Closes-Bug: #1642749
2016-12-05 17:05:27 +00:00
Daniel Curran a239c369e5 Add configuration options to enable ironic testing
.
The openstack-ansible-os_tempest playbooks create the tempest.conf file
based on a jinja2 template and a number of input variables. A section
of the tempest.conf file defines which services are enabled. Currently,
the option to enable the ironic service does not exist. Adding the
variable into the jinja template and making it default to disabled will
provide the functionality required to enable the service.

Change-Id: I6a97063c55dadbb7304f49456afd0cb2ce108531
Closes-Bug: #1636310
2016-10-27 03:06:52 +00:00
Michael Gugino 118b467eb8 Remove duplicate line from tempest.conf.j2
The line 'use_stderr = False' appeared twice in the
tempest.conf.j2 config file template.

This change removes the second entry.

Change-Id: I0f850b7e835bc3e93adb5b0e6e22b6e3e6ba0ac0
2016-08-11 22:26:08 -04:00
Michael Gugino bd824ce3c8 Fix deprecations in tempest.conf
Some settings in tempest.conf.j2 do not appear
to be supported and or are deprecated according
to tempest docs and code.

This commit correctly applies domain settings.

Change-Id: Iebddb0ea07416359dcb12ce50b18dc236b2b3ce1
2016-08-07 14:28:14 +00:00
Kevin Carter bef45a34e6 Disable stderr logging
OSLO logging currently defaults the 'use_stderr' option to True
which results duplicate logs in service daemon logs for both
upstart and systemd. To correct this issue the use_stderr
option has been set to false.

Change-Id: I9e9556701c13f98e66f11facfe1d57fbc8432630
Closes-Bug: 1588051
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
2016-08-04 17:46:45 +00:00
Michael Gugino ebe3295979 Enable broader image support
Currently, many values are hard-coded for
cirros images during tempest testing.  In
order to provide support for a wider variety
of system images, some variables have been
renamed to a more generic ``tempest_`` form
instead of the ``cirros_`` form.  Other
variables have been added to make the role
more configurable.

Additionally, many unsupported and deprecated
options still existed in this role.  These
deprecated options centered largely around
tempest.conf.j2.  Of particular note, ari/ami/aki
images have been deprecated by tempest, and
those options have been removed.

The '[boto]' testing section is no longer implemented
in tempest testing, and has been removed.

Change-Id: Ibbe2cc09416963d2326dd760c36c8a985f636734
2016-08-03 21:32:15 -04:00
Travis Truman d9e32c058e Add ability to configure zaqar for tempest testing
Paving the way for zaqar role testing using the tempest
plugin available within the zaqar source code

Change-Id: Idae0472788efdc99fa35bd011090a863c29fea7f
2016-07-28 11:36:28 -04:00
Flávio Ramalho 4a5b482eba Enable sahara on tempest
This change add variables for enabling sahara on tempest tests, by
default it is set to False. Also adds sahara client on the list of
packages to be installed.

Change-Id: I8abc5c567e0d3e5829b9f7da8be5b0d0fc065ea7
2016-06-04 13:34:01 -03:00
Travis Truman b9cb83fecf Verbose option has been deprecated from oslo.log
See http://lists.openstack.org/pipermail/openstack-dev/2016-May/095166.html
for additional details.

Change-Id: I8eb8cee6355aeb26af28c22078b18865d1e851f7
2016-05-17 11:28:53 -04:00
Matt Thompson 75bd092b9e Standardise tempest role
All of our roles have a standard pattern for installing services,
however tempest does things slightly differently.  I think most of this
is legacy and this commit brings tempest in line (for the most part)
with how other roles are written.

Note that tempest now has a ``tempest`` cli, and in a future commit we
will update this role to use that instead.  This will allow us to skip
the additional step of cloning the tempest git repo to act as a working
directory when running tests.

For some background as to why this work is being done, newer versions
of tempest are failing when run in an IRR because we are not installing
urllib3 into tempest's venv.  This is not an issue when we do an
integrated build because the repo server actually installs tempest into
the tempest venv, and all requirements get satisfied.  However, when we
install tempest without a repo server we simply install
tempest_pip_packages (which previously did not include tempest itself)
into the tempest venv.  We could update update tempest_pip_packages to
include urllib3, but doing so creates duplicate work as this
requirement is already captured in tempest's requirements.txt.

Change-Id: I6f3c36a8150b83afabae8d397d5fc7340dbc93fd
Depends-On: Ie700c061cf0efa3d1fcda9e74618bb8c6e9ae371
2016-05-10 09:08:22 +01:00