summaryrefslogtreecommitdiff
path: root/tempest/api/compute
Commit message (Collapse)AuthorAgeFilesLines
* Merge "Update "test_list_migrations_in_flavor_resize_situation" to indicate ↵Zuul2023-04-281-3/+5
|\ | | | | | | the failing request on timeout."
| * UpdateJorge San Emeterio2023-03-141-3/+5
| | | | | | | | | | | | | | | | | | "test_list_migrations_in_flavor_resize_situation" to indicate the failing request on timeout. This is one of those tests that for some reason or the other fail randomly on our CI systems. Problem is, that the error message it fails with is not very helpful, as it just indicates that a timeout happened but not much else. This change seeks to fix that by including the request id that led to the timeout. This way, once the test fails on a build, it will be possible to search the log files for this request and track the underlying problem. Closes-Bug: #2009701 Change-Id: Ic1ffd62f9d6ed0d69467f678c1820cddbb1fda12
* | rm hardcoded cidr in test_create_server_multi_nicPragadeeswaran Sathyanarayanan2023-03-211-13/+35
| | | | | | | | | | | | | | | | | | | | | | | | Now, We have some hard code in here, but some VPC are limited to some specific address ranges by default in some cloud. So, we need change these hard code to configuration, it can meet the user specific requirement flexibly and reasonably. closes-bug: #1743742 Signed-off-by: Pragadeeswaran Sathyanarayanan <psathyan@redhat.com> Change-Id: Ia201c0520b8d2df17664b84bd61755d7c2d68258
* | Merge "Update multiattach tests"Zuul2023-03-173-5/+10
|\ \ | |/ |/|
| * Update multiattach testswhoami-rajat2023-03-153-5/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Multiattach tests use legacy format to create multiattach volumes i.e. provide "multiattach=True" in request body of a create volume operation. This patch updates the multiattach tests to use multiattach volume type, which is the standard and only way[1], to create multiattach volumes. Note that the old functionality will be changed by patch[2] and passing multiattach=True in volume create request body will error out with BadRequest. Devstack will create the multiattach volume type, like an operator will create in a real deployment, and set it as a tempest config option (see depends on patch). We are adding a new config option `volume_type_multiattach` which is used as the multiattach volume type to create multiattach volumes. [1] https://docs.openstack.org/cinder/latest/admin/volume-multiattach.html#how-to-create-a-multiattach-volume [2] https://review.opendev.org/c/openstack/cinder/+/874865 Depends-On: https://review.opendev.org/c/openstack/devstack/+/877337 Depends-On: https://review.opendev.org/c/openstack/devstack/+/877497 Depends-On: https://review.opendev.org/c/openstack/devstack/+/877548 Depends-On: https://review.opendev.org/c/openstack/devstack/+/877498 Depends-On: https://review.opendev.org/c/openstack/devstack/+/877499 Change-Id: I5f68ef56fcc55dfc636936dabb5e6ad761579519
* | Merge "Fix server cleanup in test_multiple_create test"Zuul2023-03-051-0/+8
|\ \
| * | Fix server cleanup in test_multiple_create testLukas Piwowarski2023-03-031-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The above-mentioned test uses ServersClient.delete_server function to delete servers. However, this function does not wait for the successful deletion of the servers which sometimes leads to an error (see linked bug). This patch changes the test so that it uses BaseV2ComputeTest.delete_server function which waits for the successful deletion of the server. Closes-Bug: #1954535 Change-Id: Ic1ed48fda03ce3c13198d2dd299b57d68b06e63d
* | | Avoid wait for vol detach in live-migrate testsDan Smith2023-02-272-3/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This extends the recent theme of making sure the tearDown process does not hang and ultimately fail the test because it cannot detach a volume from a guest. We see (and have been seeing for a long time) the live migration tests specifically fail in this way in the gate. Change-Id: Ib1065c146ab2f927c23fc8a0b73d7040516a19a6 Related-Bug: #199232
* | | Use project_reader in server testGhanshyam Mann2023-02-221-8/+34
| |/ |/| | | | | | | | | | | | | | | | | We have project_reader credentials in tempest and they use the same project as member role creds. Nova support the project reader role in get server API. Moving the server tests to use project reader creds in GET server API call. Change-Id: Id1964ae31951dba19917110f9940bff39345cef0
* | Minimize the tests footprint in multinode jobGhanshyam Mann2023-02-113-0/+14
| | | | | | | | | | | | | | | | | | | | | | | | multinode job run all the tests including multinode and non multinode tests. But we do not need to run all the non multinode tests in this job instead smoke tests along with multinode tests should be enough to run. This make multinode jobs to run only smoke and multinode tests. For that, we need to tag the multinode tests with 'multinode' attr. Relavant-Bug: #2004780 Change-Id: I7e87d1db3ef3a00b3d27f0904d0af6a270e03837
* | Chunked GET request supportDan Smith2023-01-251-17/+15
|/ | | | | | | | | | | | | | | In one test, we are downloading the entire image (into memory) and re-uploading it. That works when the image is 16MiB but not when it is 1GiB. This adds support to the internal http client for chunked downloads (similar to upload), makes the image client able to take that flag, and finally makes the offending test do a chunked upload/ download streaming operation. Note this un-skips the test, effectively reverting a6b7e334c because the test should no longer consume large amounts of memory. Related-Bug: #2002951 Change-Id: I31e537538a1862e71091aa470da3b8e9c799bf15
* Merge "Introduce @serial test execution decorator"Zuul2023-01-231-279/+0
|\
| * Introduce @serial test execution decoratorBalazs Gibizer2023-01-181-279/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Tempest provides a LockFixture to avoid two potentially interfering tests to run in parallel. However, this solution does not scale when we want to separate a set of tests from many other test cases. For example, host aggregate and availability zone testing needs compute hosts without any nova servers to be able to test moving computes between aggregates but a lot of other tests are creating nova servers. To fully separate these aggregate tests from the rest of the tempest test cases, this patch proposes a @serial class decorator to mark a test class to be run totally independently of any other test classes. Under the hood, the @serial decorator is implemented with a tempest-wide interprocess read-write lock. The serial test classes always take the write lock, while the non-serial classes take the read lock. The lock allows in many readers OR a single writer. So the serial tests are run independently from the rest. To minimize the time a serial test blocks other tempest tests run in parallel, this patch also introduced a serial_tests test directory to store the serial tests. The current test ordering in a fresh env uses alphabetical order so the serial tests will run at the end of the execution not randomly in the middle. The gate uses fresh VMs for every run so we can rely on this optimization there. In local envs where tests are re-run, the subsequent runs will be ordered at runtime by stestr. Therfore, a longer runtime might be observed due to locking, but the correctness of the test execution is still kept. Related-Bug: #821732 Change-Id: I0181517edab75f586464a38c4811417f888783b1
* | Skip test_attach_scsi_disk_with_config_driveBalazs Gibizer2023-01-181-0/+6
|/ | | | | | | | | | This test causes excessive memory usage in the test executor as it downloads glance image data in memory. This currently causes OOM issues in the gate so the test case is skipped until the image data copying is made smarter. Related-Bug: #2002951 Change-Id: I0bfac0310fdd6ef44a633d40422cfcfdfc85a426
* Fix Compute Live Migration tests with IronicMaksim Malchuk2022-11-231-0/+2
| | | | | | | | | | | | In some deployments when Nova Compute configured together with Ironic service there are many test_live_migration.* tests failed with an error "Migration pre-check error: Unable to migrate...". This change fix the issue removing '*-ironic' hosts (used in Kolla-Ansible). The other deployments (OpenStack-Ansible, TripleO, etc.) should deploy the Ironic-Complute services with correct hostnames. Change-Id: I47993d16b86671433a64c6db57d53c2d15f8a7ae Signed-off-by: Maksim Malchuk <maksim.malchuk@gmail.com>
* Add test for compute server external event APIGhanshyam Mann2022-11-211-0/+37
| | | | | | | | Adding test as well as the service client for the compute server external event API - https://docs.openstack.org/api-ref/compute/?expanded=run-events-detail#run-events Change-Id: I1c9a99d036de760a15a5725db87ca4e9d6f2263d
* Fix server id reference in _rebuild_server_and_check()Damian Dabrowski2022-10-271-1/+1
| | | | | | | | | Reference to server id is broken now because ServerActionsTestJSON(self) object has no attribute 'server'. server attribute is passed as a method's argument. Change-Id: I7ef97019a9db973749fa81875cfb9e5e837e6bea
* Add a boot-snapshot-boot testDan Smith2022-10-071-0/+24
| | | | | | | | It occurred to me that we do not (AFAIK) have a test that shows that we can boot servers from snapshots we create right after we create them. This adds one. Change-Id: I613357e8c9cc6d382caaf7291e150448148f32dd
* Merge "Tempest test for checking unshelve to host"Zuul2022-08-301-0/+45
|\
| * Tempest test for checking unshelve to hostRené Ribaud2022-08-221-0/+45
| | | | | | | | | | | | | | | | | | | | | | | | This test runs on a multinode environment. It will create a server, shelve offload it and unshelve to it's original node. Then it will shelve offload it again and unshelve to the other node. Depends-On: https://review.opendev.org/c/openstack/nova/+/831507 Implements: blueprint unshelve-to-host Change-Id: I303a28afe69d5d17261a07fd45c4fa92bbad5598
* | Fix test_server_actions run validationBenny Kopilov2022-08-191-32/+31
|/ | | | | | | | - Remove duplicate validation_resources - Add run_validation on rebuild_server_and_check Volume detach fails when image is not up Change-Id: I669bb06105784f334ca54b8404699643fc4419c5
* Merge "Create default net in ImagesNegativeTestJSON"Zuul2022-06-181-0/+1
|\
| * Create default net in ImagesNegativeTestJSONBalazs Gibizer2022-06-171-0/+1
| | | | | | | | | | | | | | | | | | | | | | As the test result [1] showed we missed ImagesNegativeTestJSON when fixed https://bugs.launchpad.net/tempest/+bug/1844568 Related-Bug: #1844568 [1] https://storage.gra.cloud.ovh.net/v1/AUTH_dcaab5e32b234d56b626f72581e3644c/zuul_opendev_logs_7a3/846187/3/check/nova-next/7a30291/testr_results.html Change-Id: Ibd12542ee08f5020eddafcb253a978ac50f9e53a
* | compute: Move volume attached live migration tests to use SSHABLELee Yarwood2022-06-171-1/+1
|/ | | | | | | | | | | | Live migration tests the volume attachment and checking the server ssh-able will help to avoid any race during attachment operation. Note we merged this once Icdb3398061d0274fec8b4e10d955a4b00edf4524 but that was reverted in I005755b0e527255362923a6b4bbbba2f7c1dfbd1 as it was broken. This patch tries to make it right the second time. Change-Id: I898db6351e39fb4569e9fefeddf870fb8af0671c
* Merge "Make test_server_actions.resource_setup() wait for SSHABLE"Zuul2022-06-161-1/+2
|\
| * Make test_server_actions.resource_setup() wait for SSHABLEArtom Lifshitz2022-05-241-1/+2
| | | | | | | | | | | | | | | | Continuing the work of 4fc47f68c7710ccfb67c3ad28a58e047a8b51c1a, we missed a spot in the recreate_server() call from resource_setup(). Start passing wait_until='SSHABLE' in that call. Change-Id: I5c6d9afa1148772537d69a2a3321fcf32ad7eea5
* | Merge "Create router and dhcp when create_default_network set"Zuul2022-06-151-1/+3
|\ \
| * | Create router and dhcp when create_default_network setLee Yarwood2022-05-301-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We are trying to make server SSH-able before detach volume is performed (details in bug mentioned below). Creating router and dhcp is needed to setup the proper network path for server otherwise it fail - https://zuul.opendev.org/t/openstack/build/04e11a0eac12447f8a3c47fb385b0753 Related-Bug: #1960346 Change-Id: I18eff5a4216d5683a5d49ad0e400ac663650e7a9
* | | compute: Move volume attached live migration tests to use SSHABLELee Yarwood2022-06-031-6/+11
| | | | | | | | | | | | | | | | | | | | | | | | Live migration tests the volume attachment and checking the server ssh-able will help to avoid any race during attachment operation. Change-Id: Icdb3398061d0274fec8b4e10d955a4b00edf4524
* | | Merge "Wait for guest to boot before attach a volume"Zuul2022-05-312-10/+65
|\ \ \ | |/ / |/| |
| * | Wait for guest to boot before attach a volumeBalazs Gibizer2022-05-302-10/+65
| |/ | | | | | | | | | | | | | | This patch ensures test under the api.compute.admin package wait until the VM is sshable before attaches a volume to it. Related-Bug: #1960346 Change-Id: I5f93effa280725ea41150cd7cebdf29a40db9818
* | Wait for guest after resizeBalazs Gibizer2022-05-182-3/+31
|/ | | | | | | | | | To stabilize test_resize_server_with_multiattached_volume we need to wait for the guest OS to fully boot after the resize and before the test attempts to detach the volume. Closes-Bug #1960346 Change-Id: I85ee21868c9281d081c491ee590fe1457f5aa997
* Merge "Make recreate_server() wait until SSHABLE"Zuul2022-05-172-4/+5
|\
| * Make recreate_server() wait until SSHABLEArtom Lifshitz2022-05-052-4/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | Continuing the work to bandaid any tests that involve volume attachment/detachment, make the setUp() method of ServerActionsTestJSON wait for the SSHABLE status. Some of its tests, for example test_rebuild_server_with_volume_attached, use a class-level server resource that is created by setUp(). We also need to add the optional wait_until kwarg to recreate_server(), as the latter is called by setUp() in some cases. Change-Id: I3b7bcadbb7d608d705754b6ad7e2869e07b81b75 Related-Bug: 1960310
* | Remove compute api_extensions config optionGhanshyam Mann2022-05-059-76/+1
|/ | | | | | | | | | | | | Nova has remvoed the API extensions concept since stein release - https://blueprints.launchpad.net/nova/+spec/api-extensions-merge-stein Nova cannot be configured to enable/disable extension now and all extensions are enabled by default. Stein is not supported by the Tempest master so it is safe to remove the config optionn as well as the checks from tests. Change-Id: I05c0a3b23d0824e1eb9a79353dcf2976c6bcf602
* Make test_tagged_attachment wait for SSHABLEDr. Jens Harbott2022-03-271-1/+1
| | | | | | | | This test is failing very often, make it wait for the server being started, this has helped for a lot of other volume related tests, too. Signed-off-by: Dr. Jens Harbott <harbott@osism.tech> Change-Id: Ic2b162b0cd4db04dd0f6c47de815e72888d04998
* Move ServerStableDeviceRescueTest to wait for SSH-able serverGhanshyam Mann2022-03-191-32/+67
| | | | | | | | | | | | ServerStableDeviceRescueTest also perform the attach_volume on rescue server and in cleanup detach_volume. As described in the bug#1960346 we need to wait for server readiness before detach volume called. Also making centos stream 9 job as voting. Closes-Bug: #1960346 Change-Id: Ia213297b13f42d39213dea9a3b2cfee561cdcf28
* Make rescue, volume attachment compute tests to use SSH-able serverGhanshyam Mann2022-03-182-11/+37
| | | | | | | | | | | As you can see the details in bug#1960346, volume detach fails on centos 9 stream while server is not fully booted. This commit makes sure that erver creation as well as after the unrescue server test wait for the server to be SSH-able before test start performing the detach operation in cleanup. Related-Bug: #1960346 Change-Id: Ib21a764e3cf81d761d738bf7bfaf5c264b739a16
* Merge "Add compute response schema for microversion 2.75"Zuul2022-03-091-0/+29
|\
| * Add compute response schema for microversion 2.75Ghanshyam Mann2022-03-051-0/+29
| | | | | | | | | | | | | | | | | | | | Compute microversion 2.75 made the rebuild and update server response same as get servers - https://docs.openstack.org/nova/latest/reference/api-microversion-history.html#id68 Partially Implements: blueprint fix-microversion-gap Change-Id: I1728e5de0e815def0fe31c242203bd9f36dc41f4
* | Merge "Add schema for compute 2.45 microversion"Zuul2022-03-091-0/+25
|\ \ | |/
| * Add schema for compute 2.45 microversionGhanshyam Mann2022-03-031-0/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Compute microversion 2.45 changed the response of create image and create backup APIs. create image schema already covered - https://github.com/openstack/tempest/blob/fec2c93cdcc14ad08d0a35136ee287525e7a4879/tempest/lib/api_schema/response/compute/v2_45/images.py This patch adds the schema for create backup API. Partially Implements: blueprint fix-microversion-gap Change-Id: Icfeec8957c58472e7f176680d48745b5c5350b55
* | Merge "Add configuration for compute unified limits feature"Zuul2022-03-042-0/+23
|\ \
| * | Add configuration for compute unified limits featuremelanie witt2022-01-282-0/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This adds a config option to indicate the presence of the unified limits feature in the compute service and skips tests that depend on the feature being present or absent. Related to blueprint unified-limits-nova Change-Id: I9508b41f1a0a208dbce090a4143cb87b858fc5f2
* | | Merge "Fix compute quota classes schema for v2.50 and v2.57"Zuul2022-03-041-0/+11
|\ \ \ | | |/ | |/|
| * | Fix compute quota classes schema for v2.50 and v2.57Ghanshyam Mann2021-12-171-0/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For Compute microversion 2.50: 1. fixed_ips, floating_ips, security_group_rules and security_groups are removed from: * GET /os-quota-class-sets/{id} * PUT /os-quota-class-sets/{id} 2. server_groups and server_group_members are added to: * GET /os-quota-class-sets/{id} * PUT /os-quota-class-sets/{id} For Compute microversion 2.57: 1. injected_file_content_bytes, injected_file_path_bytes, injected_files are removed from: * GET /os-quota-class-sets/{id} * PUT /os-quota-class-sets/{id} Partially Implements: blueprint fix-microversion-gap Co-authored-by: Ghanshyam Mann <gmann@ghanshyammann.com> Change-Id: I2a9dcb20251d9682fbcafd706ac60325a60e35ef
* | | Merge "compute: Move device tagging tests to use wait_until=SSHABLE"Zuul2022-03-041-1/+1
|\ \ \
| * | | compute: Move device tagging tests to use wait_until=SSHABLELee Yarwood2022-03-021-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Waiting until the test instance is SSH-able before continuing the test will help us avoid failures to detach a volume from server, more info in the related bug. Related-Bug: #1960346 Change-Id: Id5496572ce6cef06e71bae1a1040b274bacf4f79
* | | | Merge "compute: Move volume attach tests to use wait_until=SSHABLE"Zuul2022-03-042-16/+7
|\ \ \ \ | |/ / /
| * | | compute: Move volume attach tests to use wait_until=SSHABLELee Yarwood2022-03-022-16/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Waiting until the test instance is SSH-able before continuing the test will help us avoid failures to detach a volume from server, more info in the related bug. Related-Bug: #1960346 Change-Id: I5ad4aa04f02001efa06616bf77e03e018206d1fe