Commit Graph

25 Commits

Author SHA1 Message Date
Zuul 8794025588 Merge "Allow tempest cleanup delete resources based on prefix" 2024-03-31 23:41:12 +00:00
Luigi Dino Tamagnone 9052dfcc85 Allow tempest cleanup delete resources based on prefix
A warning in command description of run cleanup first with dry-run
is added. The cleanup behavior is extended to allow users to delete
only resources if their name starts with a certain prefix.

Closes-Bug: #1945082
Change-Id: I65dfe051c891b3679538acec713e8616746c47f6
2024-03-29 20:14:15 +01:00
Martin Kopec 450096d30a Add set-src-dest-host role
The role will find out the available hosts and set
compute.migration_source_host and compute.migration_dest_host
options in tempest.conf if tempest_set_src_dest_host is set to
True.

Change-Id: Ic01970b100a7bb30d9c78229204c7de67681108c
2024-02-24 22:35:29 +01:00
Ade Lee e64f4c2b07 Simplify definition of fips jobs
With the new base jobs, it is no longer necessary to define a pre-run
playbook.  You simply need to set enable_fips to True and specify an
nslookup_target.  This will set things up to use ubuntu jobs when FIPS
is supported on jammy

Depends-On: https://review.opendev.org/c/openstack/devstack/+/871606
Change-Id: I1c02c4817a39d26e94873831801089d1aa86133c
2023-04-17 08:44:37 +00:00
Ade Lee 6ded070b51 Add support for ecdsa keys
In FIPS mode, using RSA keys for ssh is fine as long as SHA-1 is
not used for the signature algorithm.  Unfortunately, the version
of cirros used in OpenStack CI does not have a version of dropbear
that supports SHA-2 signatures.  So, any connections from a FIPS
enabled machine will fail as the cirros instance will only support
ssh-rsa (SHA-1 signatures).

To get around this, we add a new option to specify the key type
(validation.ssh_key_type).  This will allow the addition of other
key types in future if needed.

Tempest now supports 'rsa' and 'ecdsa' key types.

We also add a fips job to the experimental queue to test the usage
of the new key type.

Change-Id: Ib59eb8432fa1a2813b3047955157d1b3d24a55f8
2022-01-18 15:25:38 +00:00
Ghanshyam Mann 1e4cb1da36 Use older run-tempest for stable branches
run-tempest is changed recently to add the new variables but
keep supporting the old ones too, for example:
tempest_black_regex, tempest_exclude_regex. and if both
old and new var are used in job definition (parent and child) then
new variables are picked. Because Tempest is branchless, zuul pick
the Tempest master playbooks/roles. That is why job running on stable
branch gate will pick the base job definition from Tempest master.
This way if any stable jobs which were defining the old var and using old
Tempest are broken if any of their parent job define the new var.

This commit pin the older run-tempest role for such stable branches.

Change-Id: If49ab0c31aca5b7837636727096a9bc83f891b1b
2021-07-14 10:38:16 -05:00
Radosław Piliszek 151cd7b9ac Move verify-ipv6-only-deployments
from Tempest to DevStack as it tests DevStack side of things and
is useful for projects not using Tempest.

This is part 2 of 2.
The 1st part is DevStack-side, in Depends-On.

The script is left calling out to devstack because legacy (dsvm)
jobs rely on its presence.

Depends-On: Ie166730843f874b9c99e37244e460d7ad33b7eeb
Change-Id: I6fa17ae413f106453303c4882925573bd8e05029
2021-06-10 07:44:44 +00:00
Ghanshyam 9cee53835e Remove 'gabbi_tempest_path' from devstack-tempest job
We need to move 'gabbi_tempest_path' var to gabbi-tempest plugin jobs side
which is the only place it is being used. This var is specific to gabbi-tempest
not used for any other devstack-tempest jobs so defining it in devstack-tempest
base job is not the correct way. We might face issue like bug#1821072 again in
future which can end up blocking all gate jobs.

Below patch is moving this var to gabbi-tempest plugin.
- https://review.opendev.org/#/c/705339/

Change-Id: Id96e9b3f1271fce50aae982fdf12871693107e1d
Closes-Bug: #1861592
2020-11-09 12:38:41 -06:00
Martin Kopec 05c35eb793 Improve tempest-cleanup ansible role
The patch implements a new flag which will fail a job when any
resources were leaked - that can be used for verification that
tests are cleaning their resources after they are finished.

Change-Id: I212cdce9713c80491153b0bbdb313e75c1f96f1d
2020-11-03 21:47:14 +00:00
Martin Kopec f62dbc1c22 Add tempest-cleanup ansible role
The patch adds a new ansible role called tempest-cleanup which will
allow us to test tempest cleanup in the gate jobs.

Change-Id: I2cef2da6fee13e622da07b890da88850fe420152
2020-05-05 12:07:51 +00:00
Ghanshyam a0b8ca43e4 Setup framework for IPv6-only deployment verification
Devstack IPv6 base job 'devstack-IPv6' setup the IPv6 setting
to deploy the services to listen on IPv6 address.

Tempest 'devstack-tempest-ipv6' job derived from 'devstack-IPv6'
job adds the playbooks to run the tests.

As part of Train community goal 'Support IPv6-Only Deployments',
we will expand the 'devstack-tempest-ipv6' job to do
IPv6-only deployments verification.

This commit define the new roles of 'ipv6-only-deployments-verification'
which will be invoked as part of run phase of 'devstack-tempest-ipv6' job.
This role will do IPv6-only setting and deployments verification via
tools/verify-ipv6-only-deployement.sh

IPv6 verification script can be extended further to perform more checks
and via project specific test case. Those tests will run as part of project
specific child jobs.

The 'devstack-tempest-ipv6' job will be used as parent for project specific
IPv6-only job. Those child job can extend the project specific IPv6 verification
by defining new playebook for post-run. That way the base verification
done in 'devstack-tempest-ipv6' will still run in addition to project specific
verificaiton and tests run.

Verification structure will be:
- 'devstack-IPv6' deploy the service on IPv6
- 'devstack-tempest-ipv6' run will verify the IPv6-only setting and listen address
- Child jobs derived from 'devstack-tempest-ipv6' will run the IPv6 related test case or
  any further IPv6 deployment verification.

This commit also adds the new job 'tempest-ipv6-only' which will run smoke
and ipv6 related tests present in Tempest. This job will be used to run
on 6 services (Nova, Neutron, Cinder, Keystone, Glance, Swift) deployed
by devstack.

Story: #2005477
Task: #35923

Change-Id: Ie1e5e5e02ee45ab7a4aae0f35bdb42afc2c3fe2e
2019-07-29 07:37:33 +00:00
Paul Belanger 4c7b79ac3f Default gabbi_tempest_path to empty string
Seems this variable is setup from gabbi-tempest, but other jobs also use
devstack-tempest.

Change-Id: I45c582d9d9b34a1c5ab75455e42077902cbb850e
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
2019-03-19 19:26:41 -04:00
Chris Dent 9b4c50cf63 GABBI_TEMPEST_PATH in tox passenv and devstack playbook
The gabbi-tempest plugin uses an environment variable,
GABBI_TEMPEST_PATH, to identify directories in which to
find the gabbi [1] tests that will be run. This will be
used by a forthcoming zuul job [2] (hosted by the plugin)
that will automate gabbi-based service testing as described
in https://anticdent.org/gabbi-in-the-gate.html .

By setting the environment in the devstack-tempest playbook
we avoid needing to duplicate the playbook: we can use
it directly and have less risk of plays diverging. The
calling job (which doesn't allow the "environment" key)
sets a "var" which then sets the environment variable.

[1] https://gabbi.readthedocs.io
[2] https://review.openstack.org/611678

Needed-By: https://review.openstack.org/611678
Change-Id: I5aa890baa489f434b95d21e4e618f5202ac550e4
2018-10-26 10:53:53 +00:00
Felipe Monteiro 99585f3fb7 Port tempest-scenario-all to zuul v3
This patchset ports tempest-scenario-all to zuul v3.

The current job setup is the same as the legacy job setup,
except that the current job setup uses dynamic credentials
whereas the legacy setup used pre-provisioned credentials [0].

[0] 67081bf4d5/playbooks/tempest-scenario-multinode-lvm-multibackend/run.yaml (L34)

Change-Id: Icb2708686cf204a4a4b29ed23e7efa09f14455a5
2018-07-12 16:36:35 +00:00
ghanshyam a3c5a79abe Move live migration tests out of scenario job
'tempest-scenario-multinode-lvm-multibackend' job used to run
- all scenario test including slow tests with lvm multi-backend setup
- live migration and migration tests

This commit make scenario job only run the scenario tests and exclude
migration and live migration tests out of it.

coverage of those tests are there in below jobs
- migration tests run as part of -  'neutron-tempest-multinode-full'
- live migration tests run as part of - 'nova-live-migration'

This helps to provide a generic job to run the scenario tests in parallel
including slow tests so that project like nova, cinder, neutron etc can
use this job ti run on their main pipeline.

- http://lists.openstack.org/pipermail/openstack-dev/2018-May/130418.html

Change-Id: Ibddd633a3fdccb11100f5bc150c4595147402237
2018-07-10 01:59:17 +00:00
Zuul 983c23970b Merge "Write tempest-multinode-full as zuulv3 native" 2018-06-18 12:44:36 +00:00
Andrea Frittoli 688f36e065 Write tempest-multinode-full as zuulv3 native
Rewrite the base tempest multinode job as zuulv3.
The job is currently hosted in the neutron repo as
neutron-tempest-multinode-full.

Full job name history:
* neutron-tempest-multinode-full
* legacy-tempest-dsvm-neutron-multinode-full
* gate-tempest-dsvm-neutron-multinode-full-ubuntu-xenial-nv

With this patch, devstack-tempest can be used as a basis for both
single and multinode jobs.

Depends-on: https://review.openstack.org/561187
Depends-on: https://review.openstack.org/561251
Depends-on: https://review.openstack.org/564220
Depends-on: https://review.openstack.org/572313

Change-Id: If448ae20bca6e221b4a10646c69ba014656438ad
2018-06-05 12:01:52 +01:00
ghanshyam 402df09c8b Migrate legacy scenario job to tempest in-tree
"legacy-tempest-dsvm-neutron-scenario-multinode-lvm-multibackend" job
is tempest job which run all scenario tests including slow tests
and migration tests as non voting job.

This commit migrate this job to tempest in-tree and later we can
modify this to zuulv3 native.

This is first step to make slow tests running on tempest as voting
and on project side also.

Details- http://lists.openstack.org/pipermail/openstack-dev/2018-May/130418.html

Change-Id: I6bc7503347ca2f110e4a0a5b404e612168b3a417
2018-05-14 04:54:14 +00:00
Michel Peterson ac140feca0 Use fetch-subunit-output role
Currently there is a zuul-jobs role only used in this tempest job while
other jobs mostly use fetch-subunit-output role.

This changes tries to consolidate towards the most used role, to be able
to clean up zuul-jobs a bit.

Change-Id: I404760ba34767660f8816f48712e13dccad67440
Depends-On: https://review.openstack.org/548406
2018-03-01 15:46:26 +02:00
Andrea Frittoli 4c24a1a72f Do not run stage-output again in Tempest
stage-output is already invoked in the devstack job.
Rather than running the role again in Tempest post, extend the
list of files to be staged and extensions to be converted to txt.

Change-Id: I0844700f1c770809cba5a2e0e39737fd6827896f
Depends-on: https://review.openstack.org/540485/
2018-02-03 12:54:47 +00:00
Andrea Frittoli b57c8a4288 Do not override stage-dir in tempest post
Stage dir used to be /opt/stack but now devstack changed to
use ansible user dir as a stage dir (which is the default
value) so the override is not needed anymore.

Change-Id: Id531271da326413c5a88947d9a8b3ac4da68c47d
2018-01-10 22:10:48 +00:00
Andrea Frittoli (andreaf) e4fdd2fece Add role to build the stackviz report
Add a role to build the stackviz report and include it in the
tempest post play.

Change-Id: I085460fc7a4fe6baee2d85c8ab3ea3a2128ea54d
2017-11-18 10:16:12 +00:00
Andrea Frittoli (andreaf) 299c25ae01 Process test results from a tempest run
Use the process-test-results role from zuul-jobs to generate the
subunit file and html report.

Depends-on: Id6149d4e265ab9f0ab6d8faeffdec651c63dc056
Change-Id: Ib8a43a7d6e4afdca6b2e30d3e7be58b1ac771436
2017-11-08 18:04:42 +11:00
Andrea Frittoli (andreaf) 74810553a0 Add post step to Tempest base job
Stage three tempest conf and log files for archival using the
stage-output role.

Depends-on: Id45a50821539985710da7172a9185fd91e803603
Change-Id: Id67dbf3df5af52e848b8d378bc13aaa1c02cdd29
2017-11-08 18:04:42 +11:00
Andrea Frittoli (andreaf) 7d5445dae2 Initial skeleton for devstack-tempest base job
Setup the initial folder and play to run tempest.
This simply runs tempest full for now, with not support for config
options.

Change-Id: I5a76dd23900a1b5fb1764fafd837d69baf9ed8b1
Depends-on: Iffe54fbccbccd68db08f79a1b51dd7f76dbff408
2017-11-08 18:04:39 +11:00