14950 Commits

Author SHA1 Message Date
Ghanshyam Mann
14f199eca2 Run cindet-tempest-plugin tests in tempest-extra-tests
We have a lot of Tempest public interfaces which are used by the
tempest plugins and sometime it is not easy to know breaking changes
as we do not test all plugins test when any change merge in Tempest.
Example: https://review.opendev.org/c/openstack/cinder-tempest-plugin/+/937725

To avoid these breaking changes at some extend, let's run the cinder
tempest plugin tests in one of the Temp[est job. Evantually, we can
add more plugins tests if needed but I think cinder-tempest-plugin
uses a good amount of interfaces.

Change-Id: I80c2b77936ac3220ff05232877eaf6fbac4743a5
2024-12-14 02:09:43 +00:00
Zuul
422131d952 Merge "Fixed encryption type methods to comply with documentation" 2024-12-12 12:53:53 +00:00
Zuul
818036934f Merge "Stop sending underscores in header names to Swift" 2024-12-11 21:22:28 +00:00
Zuul
821fbc40eb Merge "Add support for specifying fixed IP address in floating IP association" 2024-12-11 18:33:13 +00:00
Tim Burke
6a22d4fe84 Stop sending underscores in header names to Swift
eventlet>=0.37.0 drops headers with underscores on the floor; as a
result, account and container metadata may not be stored properly.

See https://github.com/eventlet/eventlet/commit/ed743d75

Change-Id: Idcaacfed5e0203760e9cb2911d93700d8cb63cb5
2024-12-10 21:51:55 +00:00
Zuul
e5998aa036 Merge "For test VM validation resource were added." 2024-12-10 18:32:33 +00:00
Evan Wever
5e1a714cfe Fixed encryption type methods to comply with documentation
This change fixes an optional `encryption_id` parameter
for updating and deleting encryption types to comply
with OpenStack documentation.

`encryption_id` is optional because only one
`encryption_id` can be associated with a `volume type`,
therefore, an encryption type is deleted using
`volume type`.

`encryption_id` is only used for Cinder
notifications.

Closes-bug: #1835186
Co-Authored-By: Evan Wever <evan.wever@gmail.com>

Change-Id: Ieca29000b5754373e6250818ccf2b3b6d4ef80e2
2024-12-10 15:02:40 +00:00
lkuchlan
e1145a333d Add support for specifying fixed IP address in floating IP association
This patch enhances the floating IP association process by allowing the
fixed IP address to be explicitly passed. This provides greater control
and ensures the correct port is targeted when associating a floating IP,
resolving ambiguity when multiple ports are present.

Change-Id: I829703a63397a1116360a768dbccdb1f237be87c
Related-Bug: #2089798
2024-12-10 16:03:57 +02:00
Zuul
7f788b96a9 Merge "Add Jammy integration jobs to gate pipeline also" 2024-11-30 15:57:18 +00:00
Zuul
ecd3b3ae9a Merge "Migrate tempest jobs to Ubuntu Noble (24.04)" 2024-11-30 14:03:50 +00:00
Ghanshyam Mann
9e43373621 Add Jammy integration jobs to gate pipeline also
Change-Id: I0257af4351f9aaeee13fc056f045e1c0dcd56155
2024-11-29 10:44:00 -08:00
Zuul
e7b104c23c Merge "Make scenario snapshot tests work with ephemeral|swap" 2024-11-20 20:21:37 +00:00
Zuul
1a20d7a217 Merge "workaround: Wait for instance.host=None when shelving" 2024-11-20 20:14:15 +00:00
Zuul
8279bc4b01 Merge "Revert "Make tempest plugin sanity job non voting"" 2024-11-20 09:05:34 +00:00
Ghanshyam
736d328e4f Revert "Make tempest plugin sanity job non voting"
This reverts commit 9400fb6f7cc67bf129eebaf25efe129ce5bf9bbd.

Reason for revert: neutron-tempest-plugin is fixed now

Change-Id: Ibb2d7ca35165fc6ea38c278fb9faf54a4dcd4aff
2024-11-19 19:39:28 +00:00
Zuul
082ec1933c Merge "Clear pool for each new HTTP Connection" 2024-11-18 19:57:24 +00:00
Ilya Popov
c2d1762350 For test VM validation resource were added.
With Ia1a57b4d0127baaa614191cc013115732ca1cceb change additional
creation of test VM was added. New VM is created without security
group specified. It leads to default security group usage. As there
is no allow rules for ssh access in default security group - ssh
check after VM rebuild will fail. Also additional issue was found,
that we check VM for class setup, not the one we rebuild.

Fix adds additional (dedicated) validation_resources for test VM
so VM will use custom security group in newly created validation
resource and check will be performed against this new validation
resources.

Closes-Bug: #2085533
Change-Id: I4f2b9d689e45f85ff5a767df805a673d71622d50
2024-11-18 19:32:08 +00:00
Lukas Piwowarski
1164ba37f8 Clear pool for each new HTTP Connection
The memory consumption of Tempest can be high when HTTPS is used and
Tempest uses an older version of urllib3 as a dependency (1.26.x). This
is caused by Tempest, in conjunction with urllib3, loading certificates
into memory for each instance of RestClient and releasing them only at
the end of tests execution. The issue is particularly noticeable when
the certificate file is large.

This patch fixes this issue by clearing the pool in PoolManager after
each HTTP request.

Closes-Bug: #2088074
Change-Id: Iaede004522cd2e2386bac14ff725fa8e31d4991f
2024-11-18 14:27:14 +00:00
Zuul
ac8ca421b9 Merge "Allow wait_for_image_status() to have multiple" 2024-11-18 11:45:29 +00:00
Zuul
dd4ea0581b Merge "Bump hacking" 2024-11-16 06:30:03 +00:00
Ghanshyam Mann
9400fb6f7c Make tempest plugin sanity job non voting
Tempest plugin sanity job is failing with below
error
- https://zuul.opendev.org/t/openstack/build/2c2ed82bd12948b98d9ea7e2ebe625a8

  from os_ken.tests.integrated.common import quagga
ImportError: cannot import name 'quagga' from 'os_ken.tests.integrated.common'

To unblock the Tempest gate, making it non voting until plugin is fixed.

Change-Id: I2c0f3fa92b4a0ad98698b755b40614a85230756f
2024-11-15 12:33:10 -08:00
Ghanshyam Mann
040070add7 Migrate tempest jobs to Ubuntu Noble (24.04)
As per 2025.1 cycle testing runtime and community goal[1] we
need to migrate upstream CI/CD to Ubuntu Noble(24.04). Most
of the Tempest jobs will be migrate automatically once
devstack base job start running on Noble(Depends-On). As we
need to run at least one job on Ubuntu Jammy(22.04), I am
adding a new job tempest-full-ubuntu-jammy.

Few job like tempest-full-multinode-py3 and plugin sanity
job needs to override the nodeset. multinode job needs to
run on Jammy till stable/2024.2 and on Noble from master
(2025.1) onwards. Stable branch jobs testing stable branch
needs to keep running on their supported distro version.

Also bump the autopep8 to 2.1.0 as older version does not
work on python 3.12 and fail with
error: "ModuleNotFoundError: No module named 'lib2to3'".
- https://github.com/hhatto/autopep8/issues/581
To resolve the deps of autopep8 2.1.0, I need to bump
the hacking to 7.0.0 (this gives flake8 7.1.1 and
pycodestyl>2.12 which is needed by autopep8 2.1.0)

Depends-On: https://review.opendev.org/c/openstack/devstack/+/931697
Depends-On: https://review.opendev.org/c/openstack/openstack-zuul-jobs/+/932155

[1] https://governance.openstack.org/tc/goals/selected/migrate-ci-jobs-to-ubuntu-noble.html

Change-Id: If4bf5e8f8c663933d70349aa8ddb45c28e8e558b
2024-11-15 00:43:54 +00:00
Takashi Kajinami
397f49c2ee Bump hacking
hacking was indirectly capped by pycodestyle. This bumps hacking to
apply the rules recently added.

Also remove the note about pip's behavior, which is no longer valid
for recent versions.

notes:
 - T117 test is now disabled. There are a lot of lines violating
   this rule and we have to decide if we really want to enforce it.

 - Once this is merged, we have to update bump hacking in some plugins
   which import hacking extensions from tempest.

Change-Id: I5ee5e152418079f9f2720eb97c3a5361edba2695
2024-11-14 23:39:15 +09:00
Dan Smith
aa8d42c51d Allow wait_for_image_status() to have multiple
This lets us wait for one of multiple target states so we can more
effectively avoid race conditions where we miss an intermediate state
and first poll the final one.

Change-Id: If12c35d38c03fa329ebbf536e2fcd3ff2bd136de
2024-11-13 07:24:42 -08:00
22022ccc58 [Xena Jobs] use 'full' tox env
With [1] Xena is being pinned to 33.0.0 and that version
don't have 'multinode' and 'integrated-full' tox envs,
so using 'full'. xena-last tag which have both these envs
can't be used due to[2][3].

Also exclude DHCPAgentSchedulersTestJSON and Multiattach tests as
[4][5] missing in tempest-33.0.0.

[1] https://review.opendev.org/c/openstack/devstack/+/933741
[2] https://review.opendev.org/c/openstack/tempest/+/821732
[3] https://review.opendev.org/c/openstack/tempest/+/873442
[4] https://review.opendev.org/c/openstack/tempest/+/898090
[5] https://review.opendev.org/c/openstack/tempest/+/875372

Needed-By: https://review.opendev.org/c/openstack/devstack/+/933741
Change-Id: I5e82704ae81e5c0ef016fac02d153d6ed003d12b
2024-11-13 12:49:48 +05:30
Zuul
a350e320b1 Merge "Wait for VM ACTIVE state is added for fixed network case" 2024-11-12 16:55:45 +00:00
Sharpz7
e60b317062 Added statuscode 406 support
Added "NotAllowed" exception support. In general, 406 is returned when the requested microversion is not supported.

https://specs.openstack.org/openstack/api-wg/guidelines/microversion_specification.html

Change-Id: If5dda8254e8077070e77e8d56ecc6721222ef410
2024-11-10 03:29:42 +00:00
Zuul
14588c55b3 Merge "Fix "pause_teardown" help text for docutils" 2024-11-07 00:33:17 +00:00
Michael Johnson
afe134a401 Fix "pause_teardown" help text for docutils
This patch removes the space in front of two lines in the help text of
the "pause_teardown" configuration option to resolve issues with modern
versions of docutils which will raise ERROR: Unexpected indentation. [docutils]

Closes-Bug: 2086747
Change-Id: Ib295ea1c6ff521d880180143a8ed40fbc73168c9
2024-11-06 00:14:43 +00:00
Ghanshyam Mann
906b6b85a8 Check for glance service for glance tests
test_unified_limits scenario test the image service
limits and we should check the glance service is enable
or not. Adding it in skip_checks method which run very
first thing (before resource_setup()) to start the test.

Change-Id: I86637ae2fd4e00ce5571d7fac8ae41418637cf29
2024-11-05 10:12:18 -08:00
Ilya Popov
09a4373f6e Wait for VM ACTIVE state is added for fixed network case
When fixed network in tempest config is used for validation, IP
address will be returned in REST response to  get server api
only after VM will be in ACTIVE state. AS it mentioned in comment in
source  code:
"
NOTE(danms): We create these with no waiters because we will wait
for them to be validatable (i.e. SSHABLE) below. That way some of
the server creation overlap each other and with create_port.
"
But  wait_for_ssh_or_ping will call get_server_ip which fail for
server in building state (as there is no IP in server properties)

Finally we got KeyError: '<Network Name>'

Closes-Bug: 2086461
Change-Id: I21c5a81c41e771f7566bf19cac8e3b8f5f190b27
2024-11-05 20:51:58 +03:00
Zuul
2731314d44 Merge "Check only ports owned by the dhcp service in the dhcp scheduler tests" 2024-11-04 16:51:35 +00:00
Zuul
4f3b086b66 Merge "Avoid image format tests if glance is enforcing" 2024-11-04 10:56:01 +00:00
Dan Smith
2ba7ed8e39 Avoid image format tests if glance is enforcing
If glance refuses to allow bad images to be uploaded, then we cannot
even register them to then test against nova or other services. Gate
these tests on a knob indicating whether or not glance will allow
them to be uploaded. The ListUserImagesTest class depends entirely on
being able to upload random data as every format/container, which is
fundamentally not something we can do with glance enforcing content
rules.

This makes the tempest-slow-py3 job disable glance image format
inspection so that we can get the compute tests to run.

Depends-On: https://review.opendev.org/c/openstack/devstack/+/931026
Change-Id: I05bb233cf1482895b96396852a15532295d3829b
2024-11-01 07:13:58 -07:00
Slawek Kaplonski
7c44604e4f Check only ports owned by the dhcp service in the dhcp scheduler tests
In the DHCPAgentSchedulersTestJSON.test_dhcp_port_status_active test
it was checked if all ports from the network are ACTIVE. This is
typically correct but in case of the e.g. ML2/OVN backend with deployed
Neutron DHCP agent (which is rare but still possible, supported and
required in some corner use cases) this test was failing as in addition
to the port with device owner ``network:dhcp`` there was also
``network:distributed`` port created by the ovn driver and this port is
DOWN which is normal.

To avoid such false failure of this test this patch adds filtering only
for the ports with the owner like: ``network:dhcp``.

Change-Id: Id53a4b4dffe5ec18bbd9eaf2a9e74175b4dd87bb
2024-10-31 11:24:35 +01:00
Ghanshyam Mann
b9a8f3b755 Switch back the tox constraint to master
Tempest 42.0.0 release hash is prepared[1] so we can
revert back to use the master constraints by default.

[1] https://review.opendev.org/c/openstack/tempest/+/933772/1

Change-Id: I5267cc99d1ad6572fc8546d0338f25e7fad01481
2024-10-30 19:58:20 +00:00
Ghanshyam Mann
c89e516e5f Pin stable/2024.2 constraint in tox to release 42.0.0
We are going to release Tempest new tag 42.0.0 to declare
the end of support for stable/2023.1. stable/2024.2 constraint
is latest stable constraints tested with current tempest hash
which is going to be used for 42.0.0 release.

Further information:
 https://docs.openstack.org/tempest/latest/requirement_upper_constraint_for_tempest.html

Change-Id: I2db8c23168c494e5e84e12dd166ff6d7cd5c1223
2023.1-last 42.0.0
2024-10-30 19:58:17 +00:00
98f2393641 Use stable branch upper-constraints till 2023.1
Stable/2023.1 and Unmaintained xena/yoga/zed runs ubuntu-focal
jobs and since with [1] py3.8 pins are dropped from master
upper-constraints, so these branches can no longer use master
constraints with envs running with python3.8.
With this patch making these branches to use stable constraints.

[1] https://review.opendev.org/c/openstack/requirements/+/925201
[2] https://lists.openstack.org/archives/list/openstack-discuss@\
    lists.openstack.org/thread/FOWV4UQZTH4DPDA67QDEROAESYU5Z3LE/

Needed-By: https://review.opendev.org/c/openstack/devstack/+/933704
Related-Bug: #2085886
Change-Id: I8d2ff33384aec93820aa27ad27f1ff9bd7e87098
2024-10-30 11:45:55 -07:00
Ghanshyam Mann
3e5592f58c End support for stable/2023.1
This marks the end of support for stable/2023.1
which is moving to 'unmaintained' stage[1].

This adds the release note to mark the end of
support of 2023.1 as well as drop the job.

https: //lists.openstack.org/archives/list/openstack-discuss@lists.openstack.org/thread/UDQAC7SR5JAQJE5WBAG54A2MTBVBTJ44/

Change-Id: Ia91d9f4590f0b595a306a15f2c776cbabee169ab
2024-10-30 11:39:44 -07:00
Eduardo Olivares
b530c1ffb7 Measure metadata downtime during live-migration
This patch adds to test_server_connectivity_live_migration
a verification of the downtime that affects the metadata service during
a live-migration.
A script is executed on the VM instance in background while the instance
is live-migrated. After live-migration is completed, the script output
shows the duration of the metadata outage and the test compares that
duration with a configured threshold.

Change-Id: Id1c58a2fec14ff268c22efc3551fa36f3480f1a0
2024-10-26 13:48:47 +00:00
Eduardo Olivares
0e599c0d1f Remove python 3.8 support
In this cycle, oslo library are dropping the
python3.8 support. Without oslo libs, Tempest
cannot support the python 3.8. Tempest can be run
in virtual env and upstream CI also test the stable
supported branches in virtual env. If anyone want to
test the cloud on python 3.8, they can still run the
Tempest in virtual env python 3.9.

This patch removes the support of python 3.8 and its testing.

Change-Id: I3f540da045c5e89a3f09ce2cf94877c1560f3436
2024-10-25 14:10:20 -07:00
Zuul
357fc7ec2d Merge "Fix web-download trying to import qcow2 as raw" 2024-10-23 08:09:30 +00:00
Zuul
735b18f915 Merge "Stop violating image disk_format rules" 2024-10-22 21:14:37 +00:00
Pierre Riteau
c887976ac6 Fix typo in release note
Change-Id: Id17e4d4285660f0e7ec91635aa89cdd17d51330b
2024-10-22 19:46:10 +02:00
Zuul
eb41892098 Merge "Test python 3.12" 2024-10-21 13:01:33 +00:00
Rodolfo Alonso Hernandez
6ad37f2b29 Wait for the router port activation before deletion
The cleanup method ``_remove_router_interface_with_subnet_id`` should
wait for the router interface (port) activation before trying to delete
it. That will prevent a race condition between the deletion and the
port update.

Closes-Bug: #2083287
Change-Id: Id9029eb5a0558e74c62248fa08689aa1adee961a
2024-10-15 06:01:51 +00:00
Zuul
868ee068ee Merge "config: Change [volume] catalog_type default" 2024-10-07 15:19:19 +00:00
Zuul
6fed853c37 Merge "Add Tempest gate job for stable/2024.2" 2024-10-07 14:09:56 +00:00
melanie witt
d8e4894956 Add compute response schema for microversion 2.96
Compute microversion 2.96 added the pinned_availability_zone field to
the GET /servers/detail and GET /servers/{server_id} responses.

https://docs.openstack.org/nova/latest/reference/api-microversion-history.html#maximum-in-2024-1-caracal-and-2024-2-dalmatian

Change-Id: I7b1e32b7ac3622029336f1919fb5cc2731050a2d
2024-10-03 23:38:57 +00:00
melanie witt
4e96588cf4 workaround: Wait for instance.host=None when shelving
There is a race in Nova where an instance being shelved is set to the
SHELVED_OFFLOADED vm_state before the instance.host is cleared. It
appears to be non-trivial to fix given the comments in that code
explictly say the updates have the be in that order.

This works around the issue by waiting until the instance.host is None
before considering the shelve offload to be completed.

Related-Bug: #2045785

Change-Id: Ia45247a7aa14eb5f0038d4512a0b4ebe6af5a573
2024-10-02 19:09:57 +00:00