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
Two test_network_basic_ops tests are failing consistently in
centos-8-stream jobs (nova side tempest-integrated-compute-centos-8-stream
and tempest tempest-full-py3-centos-8-stream jobs).
1. tempest.scenario.test_network_basic_ops.TestNetworkBasicOps.test_hotplug_nic
2. tempest.scenario.test_network_basic_ops.TestNetworkBasicOps.test_network_basic_ops
Failure: https://zuul.opendev.org/t/openstack/build/e0db6a9a7ba04e66b0781ba7d259357d/logs
This is blocking nova and tempest gateso making the centos8 stream job
non voting until bug is fixed.
Related-Bug#1957941
Change-Id: Ia8c575b1accf4fa2a25b903bf9bf5a614752e344
Now that bug 1943724 is fixed in neutron we can extend the tempest test
coverage to show that changing the direction of the QoS minimum
guaranteed bandwidth rule on a bound port is supported.
Related-Bug: #1943724
Change-Id: I09e773baedcffc8af5a88e0be1df38d14633ed74
There is a non-negligible number of tests in tempest that need accounts
generated by account-generator with a concurrency of at least 2. Running
these tests with accounts generated with the current default value for
concurrency makes them therefore fail.
This change sets the default value for concurrency to 2 and updates
the documentation for --concurrency parameter.
Closes-Bug: #1948935
Change-Id: Iada980beff9db3c8cd02c84d0d7602264b66ddf8
If waiting for a server to reach a particular status fails - for
example, a server never reaches ACTIVE after boot - the most useful
piece of information when debugging the failure is the orignal request
ID - in our example, the request ID of the original POST /servers
request.
This patch makes create_server() remember the original server boot
request ID, and wires that value up into wait_for_server_status(), so
that the latter can log it if the wait fails.
Because we have to remain compatible with calls to
wait_for_server_status() that do not pass a request_id, there's some
conditional logic to only log it if it was passed in.
Similar mechanics can, in the future, be added to other areas where
tests can fail, for example for live migration or resizing, or
attaching a port to an server.
Change-Id: I3d5aa41d96f7fa4fc860ed9d1076a247d5fa7bf6
When doing the attachment of volume with glance host, the
"server_id" field of volume attachment response is null which is
not handled in the schema validation of list volume with detail.
This caused a failure in one of the tempest volume test
"test_unmanage_manage_volume" where we do a list volume with
detail request and one volume (probably from other test running
in parallel) existed with an active attachment to the glance host[2].
We can see that the "server_id" field of the attached volume is null[3].
The "server_id" field is only present when doing the attachment
with nova.
This patch allows the "server_id" to be "string" as well as "null" type
to handle both nova and glance usecase.
[1] https://86aa517b6cb393144dd6-d78b0c94e26e635eac828273888f290f.ssl.cf5.rackcdn.com/822731/1/check/glance-multistore-cinder-import/e52281e/testr_results.html
[2] Body: b'{"volumes": [{"id": "e11beb8b-e170-4c5c-945b-e854c01f85ab",
"status": "in-use",...
, "attachments":
[{"id": "e11beb8b-e170-4c5c-945b-e854c01f85ab",
"attachment_id": "5132d152-54c3-4aa6-90e8-f13d2d1d0028",
"volume_id": "e11beb8b-e170-4c5c-945b-e854c01f85ab",
"server_id": null,
"host_name": "ubuntu-focal-inmotion-iad3-0027876140",
"device": "glance_store",...
[3] "server_id": null
Closes-Bug: #1956340
Change-Id: I92d4d49bf5fe52f3417555260e0771397f18334d
Fixes intermittent tempest unittest failure of "test_fix_argument_yes".
The bug was in check_uuid.py and not in the test itself. As part of
the fix and backward compatibility, enabled check_uuid.py to run a
validation of a py module from any dir by adding --libpath parameter to
argv.
Closes-Bug:#1918316
Change-Id: If5d3a3852320e1d3b26af433f7a66be7d42e2b84
1. For microversion 2.33
hypervisor_links is added to the response body for the following APIs:
- GET /os-hypervisors
- GET /os-hypervisors/detail
2. For microversion 2.53
servers is added to the response body for the following APIs:
- GET /os-hypervisor
- GET /os-hypervisors
- GET /os-hypervisors/detail
This is to fix the hypervisor schema for microversion 2.33 and 2.53.
Partially Implements: blueprint fix-microversion-gap
Co-authored-by: Ghanshyam Mann <gmann@ghanshyammann.com>
Change-Id: Ifeb26a50b604d257e9ab00cceed7cd2f34621419
API microversion fixture is used to set the API
microversion on service client and reset it back
after test execution. That is done in setUp()
method and due to that API microversion is not
set on service client during resource_setup()
method and any API call will be requested on base
version.
To sync the complete test execution of test class
with requested API microversion, this commit moves
the API microversion setting in resource_setup()
method.
Closes-Bug: #1881863
Change-Id: Ia4b884a79cc0e50057dd57090737332bd76da37e
We have moved the API microversion fixture to
tempest.lib.common.api_microversion_fixture location.
This commit deprecates the old fixture so that we can
remove them in Z cycle.
Change-Id: If38aa21a4cd99d2a5fe4a5c3b41214cd54f97f8d
Tests should be explicit about their use of admin credentials. The
base compute admin tests class overrode self.image_client with the
admin version. Stop doing that, and introduce a new
self.admin_image_client client that tests can explicitly use.
Needed-by: https://review.opendev.org/c/openstack/whitebox-tempest-plugin/+/805300
Change-Id: I1a0c84b41b1b77d3a618a8f15448909bd12a0742
The method is deprecated since Python 3.2[1] and shows the following
DeprecationWarning.
/usr/lib/python3.9/unittest/case.py:1134: DeprecationWarning:
assertDictContainsSubset is deprecated
warnings.warn('assertDictContainsSubset is deprecated',
[1] https://docs.python.org/3/whatsnew/3.2.html#unittest
Closes-Bug: #1938103
Change-Id: I2e868d13d52a2d3c6081a8b756fbe83f8b57cf66
This reverts commit 5b91aea1c618c1b14da7165f656c783ba4d9816e.
Reason for revert: Investigating whether this is still an issue. There is an extremely similar test (GroupsV320Test.test_reset_group_status) that was reported to intermittently fail (Bug #1783566); it is not currently skipped and I haven't seen failures reported for that one in a long time.
Change-Id: I2d252be140bd728ea01460a61a3097c6f3a2dc82
openstacksdk-functional-devstack should be part of
integrated gate so that cross service-sdk testing
can be covered to avoid any regression.
Change-Id: Idaab1b0952b2d6d9c0e2b9b255ec401d2e315b19
tempest.api.identity.admin.v3.test_tokens.TokensV3TestJSON.test_rescope_token fails
if not used default value for CONF.identity.default_domain_id
Closes-Bug: 1951446
Change-Id: Ie08d570907ddf9102c1297f717355a7f772aabb8