63 Commits

Author SHA1 Message Date
Zuul
61ad4f1f27 Merge "Enable virtio-scsi in nova-next" 2024-05-20 21:41:24 +00:00
Dan Smith
a4e72f71fc Upload glance image with --file in ceph job
This enables our use of the OCaaS devstack feature, which can't support
image upload from stdin.

Change-Id: Idc5646ef6763447e3c1c68de03dea8197c305f6c
2024-05-08 10:57:06 -07:00
Dan Smith
32546d9c1b Enable virtio-scsi in nova-next
This lets us test the direct-lun volume attachment model.

Change-Id: Ibc7bff377cc5b5572e2a11006116401babaac347
Depends-On: https://review.opendev.org/c/openstack/tempest/+/918457
2024-05-07 11:49:21 -07:00
Dan Smith
010983e803 Test ceph-multistore with a real image
This inflates the cirros image to 1G for a more realistic scenario.
Technically we should have been doing something like this all along,
as the deployment guidance for ceph is to use a raw image, not a qcow2
one, so this also increases our accuracy to real-life.

We also need to up the volume size tempest uses for various tests
to make sure we will fit.

Change-Id: I5c447e630aaf1413a5eac89c2e8103506d245221
2022-11-09 11:34:02 -08:00
Jonathan Race
1b2ff083eb zuul-job for Adds Pick guest CPU architecture based on host arch
in libvirt driver support

This is split 3 of 3 for the architecture emulation feature.

Added initial ci content for tempest test.

Implements: blueprint pick-guest-arch-based-on-host-arch-in-libvirt-driver
Signed-off-by: Jonathan Race <jrace@augusta.edu>
Change-Id: I0159baa99ccf1e76040c197becf2a56c3d69d026
2022-02-25 16:55:43 -05:00
Lee Yarwood
91e53e4c2b zuul: Replace grenade and nova-grenade-multinode with grenade-multinode
If2608406776e0d5a06b726e65b55881e70562d18 dropped the single node
grenade job from the integrated-gate-compute template as it duplicates
the existing grenade-multinode job. However it doesn't remove the
remianing single node grenade job still present in the Nova project.

This change replaces the dsvm based nova-grenade-multinode job with the
zuulv3 native grenade-multinode based job.

Various legacy playbooks and hook scripts are also removed as they are
no longer used. Note that this does result in a loss of coverage for
ceph that should be replaced as soon as a zuulv3 native ceph based
multinode job is available.

Change-Id: I02b2b851a74f24816d2f782a66d94de81ee527b0
2021-04-29 11:05:58 +01:00
Lucas Alvares Gomes
e097c5a792 [OVN] Explicitly set grenade job to ML2/OVS
Devstack is changing the Neutron default to OVN backend. For the grenade
job we need to wait until the stable branch is deployed with OVN so that
we can upgrade it to master.

Change-Id: I51f0273e90ee39d644cf85a0bdb9d4f95de6d3c7
Signed-off-by: Lucas Alvares Gomes <lucasagomes@gmail.com>
2021-04-12 09:39:16 +01:00
Dan Smith
46704f7702 Make nova-ceph-multistore use policy.yaml
This changes our tweak of glance policy to use the new yaml format
instead of json. Glance needs to tweak this file too in some jobs,
and it's easier to do that in two places if the more modern yaml
format is used.

Change-Id: I4d4263987719d4885f114931130a71877f25d21e
Related-Bug: #1916926
2021-03-10 07:35:24 -08:00
Dan Smith
cbe3cd9dc3 Restart glance after updating policy in job
When we write out the glance policy for the multistore job, we do
so after glance has already started. After the json->yaml change,
we will decide too early in g-api lifetime that the legacy file
isn't present and thus never honor it later. So, create it and then
restart glance services.

Change-Id: Ic1c01366dbfdcfb85750b85f960b76aea934db59
2021-01-29 16:16:24 -08:00
Lee Yarwood
1811731424 nova-evacuate: Remove leftover playbook from standalone job
The job has been merged into nova-live-migration by
c0fe95fcc5aec99a83dd57093dc230ef67b36b39 so this unused playbook should
be removed.

Change-Id: Ibdf717e36fe3c7d1d57f094eecda796c6bf38467
2020-12-07 20:26:29 +00:00
Lee Yarwood
c0fe95fcc5 zuul: Merge nova-evacuate into nova-multinode-live-migration
Both jobs deploy a multinode env before running their tests so just
append the new nova-evacuate tests to the end of the job.

Change-Id: If64cdf1002eec1504fa76eb4df39b6b2e4ff3728
2020-11-06 10:49:25 +00:00
Ghanshyam Mann
e7c7a2851e Modify glance's copy_image permission for nova-ceph-multistore
nova-ceph-multistore setup needs non-admin users to copy the image.
To allow that glance's policy was overriden to allow public
images to copy. This restriction again can cause issue if there
is any new copy image tempest test try to copy private image with
admin users.
- https://review.opendev.org/#/c/742546/

Let's allow everyone to copy every image to make it work
for all type of test credentials.

Change-Id: Ia65afdfb8989909441dba55faeed2d78cc7f1ee7
2020-10-29 12:20:17 -05:00
Lee Yarwood
f357d80407 zuul: Introduce nova-evacuate
This change reworks the evacuation parts of the original
nova-live-migration job into a zuulv3 native ansible role and initial
job covering local ephemeral and iSCSI/LVM volume attached instance
evacuation. Future jobs will cover ceph and other storage backends.

Change-Id: I380e9ca1e6a84da2b2ae577fb48781bf5c740e23
2020-09-23 16:47:47 +01:00
Dan Smith
a81189b0e2 Make our ceph job test with glance in multistore mode
This makes our ceph job configure glance with multiple stores enabled.
It also makes sure that devstack uploads the cirros image to the file-
backed store, and configures nova for automatic copy-to-store
functionality. In order to allow this, we must grant all users ability
to copy-to-store for public images, since the tempest tests run as
their own users. This broadens the coverage of our ceph job to hit not
only the ceph paths, but the copy-to-store paths, as well as glance's
multi-store paths, and glance's async task paths.

Related to bp/rbd-glance-multistore

Depends-On: https://review.opendev.org/#/c/740322
Depends-On: https://review.opendev.org/#/c/738703
Change-Id: Iff5e9eaed7eb2345eaafc90c8cd6466a2cbca08c
2020-07-14 09:11:42 -07:00
Matt Riedemann
7661995b69 Enable cross-cell resize in the nova-multi-cell job
This changes the nova-multi-cell job to essentially
force cross-cell resize and cold migration. By "force"
I mean there is only one compute in each cell and
resize to the same host is disabled, so the scheduler
has no option but to move the server to the other cell.

This adds a new role to write the nova policy.yaml file
to enable cross-cell resize and a pre-run playbook so
that the policy file setup before tempest runs.

Part of blueprint cross-cell-resize

Change-Id: Ia4f3671c40e69674afc7a96b5d9b198dabaa4224
2019-12-23 10:10:57 -05:00
Matt Riedemann
8cb6f07444 Drop neutron-grenade-multinode job
We were running the voting neutron-grenade-multinode job in the
check queue on nova changes but were not running it in the gate
queue.

We run the nova-grenade-multinode job in both check and gate queues.

The major differences between those jobs are that the neutron
job runs the tempest smoke tests during the grenade run on the
old and new side of the grenade environment and the nova job would
not run smoke tests but ran a select few live migration and
resize/cold migration tests via the post-test hook script, and would
run those with an lvm/local storage/block migration and ceph/shared
storage setup.

This change makes the nova-grenade-multinode job run smoke tests
like the neutron-grenade-multinode job was so we can drop the
neutron-grenade-multinode job from running on nova changes in the
check queue and save a few nodes.

Note that neutron-grenade-multinode ran all smoke tests but this
change makes nova-grenade-multinode run a subset of smoke tests for
only the ones that involve compute. This is in order to keep the
execution time of the job down by not testing non-compute API things
that nova changes don't care about, e.g. keystone, swift, cinder, etc
smoke tests.

[1] https://zuul.opendev.org/t/openstack/build/377affdf97b04022a321087352e1cc4c/log/logs/grenade.sh.txt.gz#41965

Change-Id: Icac785eec824da5146efe0ea8ecd01383f18398e
2019-11-19 15:52:26 +00:00
Matt Riedemann
85a1dd338b Convert legacy nova-live-migration and nova-multinode-grenade to py3
This makes these legacy devstack-gate-based jobs run with python3.

Change-Id: Id565a20ba3ebe2ea1a72b879bd2762ba3e655658
2019-11-14 16:06:02 +00:00
Zuul
85d21ad5e0 Merge "Convert nova-lvm job to zuul v3" 2019-09-04 20:08:05 +00:00
Balazs Gibizer
7f8dd04108 Rename the nova-grenade-live-migration job to nova-grenade-multinode
We are planning to add non-live-migration multinode tests to this job
so first we rename it to be more generic.

Change-Id: I7571ff508fcccba40cf2307a8788c1850d2d9fd8
2019-08-30 15:35:46 -04:00
Balazs Gibizer
3c1d9dab85 Move live_migration test hooks under gate/
This patch resolves a TODO in the .zuul.yaml about using common
irrelevant files in our dsvm jobs. To be able to do that we need to move
the test hooks from nova/tests/live_migraton under gate/.

Change-Id: I4e5352fd1a99ff2b4134a734eac6626be772caf1
2019-08-29 14:45:48 -04:00
Matt Riedemann
35d8f93645 Convert nova-lvm job to zuul v3
Converts the job to zuul v3 native format so the legacy
playbook is deleted.

Drops the blacklist regex file in favor of simply configuring
tempest to not run resize or cold migration tests.

Change-Id: I4630066731f12c42091ddf9dd3159e0494df88b1
2019-08-02 13:08:50 -04:00
Zuul
89e65bd976 Merge "Convert nova-next to a zuul v3 job" 2019-07-26 18:02:40 +00:00
Matt Riedemann
cee072b962 Convert nova-next to a zuul v3 job
For the most part this should be a pretty straight-forward
port of the run.yaml. The most complicated thing is executing
the post_test_hook.sh script. For that, a new post-run playbook
and role are added.

The relative path to devstack scripts in post_test_hook.sh itself
had to drop the 'new' directory since we are no longer executing
the script through devstack-gate anymore the 'new' path does not
exist.

Change-Id: Ie3dc90862c895a8bd9bff4511a16254945f45478
2019-07-23 11:32:35 -04:00
Lee Yarwood
2a94f95cee nova-lvm: Disable [validation]/run_validation in tempest.conf
As with Iea948bcc43315286e5c130485728152d4710bfcb for the
devstack-plugin-ceph-tempest job this change disables ssh validation in
the nova-lvm job to avoid commonly seen failures:

http://status.openstack.org/elastic-recheck/#1808010

Related-Bug: #1802971
Change-Id: I566f9a630d06226252bde800d07aba34c6876857
2019-07-09 19:16:16 +00:00
Zuul
809799e581 Merge "Set [quota]count_usage_from_placement = True in nova-next" 2019-05-30 20:39:56 +00:00
melanie witt
f17dbe69f2 Set [quota]count_usage_from_placement = True in nova-next
This adds test coverage of counting quota usage for cores and ram from
placement and instances from instance mappings in the nova-next job.

Part of blueprint count-quota-usage-from-placement

Change-Id: I2eff2d60e3c227394ab137a4ec80ff21ec52c8a2
2019-05-23 18:02:38 +00:00
Dan Smith
1ee0e58446 Enable image type query support in nova-next
This enables the scheduler support for asking placement to filter computes
with support for the given image's disk_format.

Related to blueprint request-filter-image-types

Change-Id: I07e0e6b26d01d3b481c74693bb1948ed82ceebd6
2019-05-07 10:24:21 -07:00
OpenDev Sysadmins
fc3890667e OpenDev Migration Patch
This commit was bulk generated and pushed by the OpenDev sysadmins
as a part of the Git hosting and code review systems migration
detailed in these mailing list posts:

http://lists.openstack.org/pipermail/openstack-discuss/2019-March/003603.html
http://lists.openstack.org/pipermail/openstack-discuss/2019-April/004920.html

Attempts have been made to correct repository namespaces and
hostnames based on simple pattern matching, but it's possible some
were updated incorrectly or missed entirely. Please reach out to us
via the contact information listed at https://opendev.org/ with any
questions you may have.
2019-04-19 19:45:52 +00:00
Stephen Finucane
7c7798ad52 Remove cells v1 jobs
We're going to start ripping out cells v1. First step is removing the
tests for this soon-to-be-removed feature.

Part of blueprint remove-cells-v1

Change-Id: I2031bf2cc914d134e5ed61156d2cfc621f006e0b
Signed-off-by: Stephen Finucane <sfinucan@redhat.com>
2019-04-09 17:15:37 +01:00
Zuul
02b8af4f17 Merge "Re-enable testing of console with TLS in nova-next job" 2019-03-26 08:24:15 +00:00
melanie witt
872a9b4e7c Re-enable testing of console with TLS in nova-next job
This is a partial revert of Ie46311fa9195b8f359bfc3f61514fc7f70d78084.

Depends-On: https://review.openstack.org/643045

Related-Bug: #1819794

Change-Id: I1bf37edb4dc3bdb6f23d077eae32e81ef48bdcdc
2019-03-25 03:45:36 +00:00
Ian Wienand
1623502eb1 Replace openstack.org git:// URLs with https://
This is a mechanically generated change to replace openstack.org
git:// URLs with https:// equivalents.

This is in aid of a planned future move of the git hosting
infrastructure to a self-hosted instance of gitea (https://gitea.io),
which does not support the git wire protocol at this stage.

This update should result in no functional change.

For more information see the thread at

 http://lists.openstack.org/pipermail/openstack-discuss/2019-March/003825.html

Change-Id: I913aafeeca1569bc244347bc630762f5a6cc072e
2019-03-24 20:34:42 +00:00
ghanshyam
d74a5b23a5 Disable the tls-proxy in nova-next & fix nova-tox-functional-py35 parent
While moving the legacy job nova-next on bionic, tls-proxy
did not work and leads to nova-next job fail.

To proceed further on Bionic migration which is blocked by nova-next failure,
this commit temporary disable the tls-proxy service until bug#1819794 is fixed.

Also this updates the parent of nova-tox-functional-py35 from openstack-tox
to openstack-tox-functional-py35 in order to handle the upcoming change
of the infra CI default node type from ubuntu-xenial to ubuntu-bionic.

The python3.5 binary is not provided on ubuntu-bionic and the shared
"py35" job definitions in the openstack-zuul-jobs repository have been
patched to force them to run on ubuntu-xenial [1]. We should inherit
from one of these jobs for jobs that rely on python3.5.

[1] http://lists.openstack.org/pipermail/openstack-discuss/2019-March/003746.html

Related-Bug: #1819794

Change-Id: Ie46311fa9195b8f359bfc3f61514fc7f70d78084
2019-03-13 23:46:19 +00:00
Zuul
151deebde8 Merge "Do not run tempest.scenario.test_network* tests in nova-next" 2019-03-09 14:18:16 +00:00
Zuul
fb4308e33a Merge "Move legacy-grenade-dsvm-neutron-multinode-live-migration in-tree" 2019-03-07 18:58:39 +00:00
Matt Riedemann
f4387e4b66 Do not run tempest.scenario.test_network* tests in nova-next
The test_network* scenario tests in tempest take a really long
time. For example, the tempest.scenario.test_network_v6.TestGettingAddress
tests in one job (that timed out) took ~35 minutes.

We already run test network scenario tests in the tempest-slow job
so let's just let that job handle these and exclude them from
nova-next.

Change-Id: I9c7fc0f0b0937f04c5b3ab9c5e8fff21c4232b86
2019-03-06 10:12:26 -05:00
Matt Riedemann
52613c01ce Move legacy-grenade-dsvm-neutron-multinode-live-migration in-tree
This moves the legacy-grenade-dsvm-neutron-multinode-live-migration
job from openstack-zuul-jobs in-tree. Nova is the only project
that runs this job and this allows nova to directly manage it.

The job will still use the same irrelevant-files list and is still
non-voting for the time being and only runs in the check queue.

It has been renamed to "nova-grenade-live-migration".

This change is meant to be backported to rocky, queens and pike
to allow us to drop legacy-grenade-dsvm-neutron-multinode-live-migration
from openstack-zuul-jobs where the job is branchless but restricted
to pike+ branches.

A follow up master-only (stein) change will make the job voting
and gate per the plan in the mailing list [1].

[1] http://lists.openstack.org/pipermail/openstack-discuss/2019-February/003341.html

Change-Id: Ie9b61775dbb92b10237688eaddaca606c1c73a23
2019-02-28 21:40:30 -05:00
Matt Riedemann
00d9a3a2e6 Test live migration with config drive
Tempest live migration tests do not create the server
with config drive so we do not, by default, have test
coverage of live migrating an instance with a config
drive. This change forces nova to create a config
drive for all instances in the nova-live-migration
job which will also run evacuate tests with a config
drive attached.

Change-Id: I8157b9e6e9da492a225cbb50a20f434f83a5fecb
Related-Bug: #1770640
2019-02-28 10:54:01 -05:00
Zuul
8c2dd6166f Merge "Change nova-next tempest test regex" 2019-02-15 02:05:43 +00:00
Zuul
84682d8e7b Merge "Remove PLACEMENT_DB_ENABLED from nova-next job config" 2019-02-14 17:05:44 +00:00
Zuul
7e3ad4eec6 Merge "Change nova-next job to run with python3" 2019-02-13 18:52:58 +00:00
Matt Riedemann
e209fc5ed0 Change nova-next tempest test regex
Before this change, nova-next ran the same tests
as the tempest-full job which was all non-slow API
and scenario tests.

To avoid running redundant tests on the same nova
change, this patch changes the tempest run regex
to run only compute API tests along with all
scenario tests and includes slow tests (by not
excluding them like tempest-full does).

By removing the non-compute API tests we should
still be able to keep this job running in a reasonable
time even though the slow tests are added.

As discussed in https://review.openstack.org/606978/,
test_volume_swap_with_multiattach will be run again
with this change since it otherwise won't run in
tempest-slow since that is a multi-node job and the
test was blocked from running in multi-node jobs until
bug 1807723 is fixed. In other words, this gives us
volume multi-attach testing of swap volumes again since
nova-next is a single-node job.

Change-Id: Icbc06849dfcc9f41c7aaf7de109e036a993de7c7
2019-02-13 08:22:17 -05:00
Matt Riedemann
c92681aab1 Remove PLACEMENT_DB_ENABLED from nova-next job config
The PLACEMENT_DB_ENABLED variable in devstack was removed
in Stein: I0b217e7a8c68a637b7a3445f6c44b7574117e320

Change-Id: Ic0a3551cdfa45adc23506143c0fbef6a3ab140dc
2019-02-05 10:01:48 -05:00
Matt Riedemann
e9dd8c0f48 Drop nova-multiattach job
The dependent tempest change enables the volume multiattach
tests in the tempest-full and tempest-slow jobs, on which
nova already gates, which allows us to drop the special
nova-multiattach job which is mostly redundant test coverage
of the other tempest.api.compute.* tests, and allows us to
run one fewer job on nova/cinder/tempest changes in Stein.

The docs are updated to reflect the source of the testing
now.

Also depends on cinder dropping its usage of the nova-multiattach
job before we can drop the job definition from nova.

Depends-On: https://review.openstack.org/606978
Depends-On: https://review.openstack.org/606985
Change-Id: I744afa1df9a6ed8e0eba4310b20c33755ce1ba88
2019-02-05 09:13:02 -05:00
Matt Riedemann
ab72dd4096 Change nova-next job to run with python3
The way of the future is python 3 so it makes sense
that our nova-next job, which is meant to test future
things and advanced configuration, would run under python3.

Change-Id: Ie33efb41de19837b488d175900d9a4666f073bce
2019-02-04 11:36:25 -05:00
Eric Fried
4319dc195b Turn off rp association refresh in nova-next
Set [compute]resource_provider_association_refresh=0 to turn off all
periodic refreshing of the provider cache in the report client.

Note that this probably will have zero effect in the nova-next job
other than making sure that that setting doesn't blow up the world.
Because the job is always doing something, there's never a lull long
enough for the refresh timers to expire anyway, so no periodic
refreshing was happening even before this change.

Change-Id: I072b3fa4847db14e5a3f03c775a377e3514224f1
2019-01-17 14:31:31 +00:00
Chris Dent
84182d0aa2 Remove placement perf check
gate/post_test_perf_check.sh did some simplistic performance testing of
placement. With the extraction of placement we want it to happen during
openstack/placement CI changes so we remove it here.

The depends-on is to the placement change that turns it on there, using
an independent (and very small) job.

Depends-On: I93875e3ce1f77fdb237e339b7b3e38abe3dad8f7
Change-Id: I30a7bc9a0148fd3ed15ddd997d8dab11e4fb1fe1
2018-11-30 15:12:48 +00:00
Matt Riedemann
8327011f91 Add post-test hook for testing evacuate
This adds a post-test bash script to test evacuate
in a multinode job.

This performs two tests:

1. A negative test where we inject a fault by stopping
   libvirt prior to the evacuation and wait for the
   server to go to ERROR status.

2. A positive where we restart libvirt, wait for the
   compute service to be enabled and then evacuate
   the server and wait for it to be ACTIVE.

For now we hack this into the nova-live-migration
job, but it should probably live in a different job
long-term.

Change-Id: I9b7c9ad6b0ab167ba4583681efbbce4b18941178
2018-10-25 16:15:56 -04:00
Matt Riedemann
25dadb94db Remove the CachingScheduler
The CachingScheduler has been deprecated since Pike [1].
It does not use the placement service and as more of nova
relies on placement for managing resource allocations,
maintaining compabitility for the CachingScheduler is
exorbitant.

The release note in this change goes into much more detail
about why the FilterScheduler + Placement should be a
sufficient replacement for the original justification
for the CachingScheduler along with details on how to migrate
from the CachingScheduler to the FilterScheduler.

Since the [scheduler]/driver configuration option does allow
loading out-of-tree drivers and the scheduler driver interface
does have the USES_ALLOCATION_CANDIDATES variable, it is
possible that there are drivers being used which are also not
using the placement service. The release note also explains this
but warns against it. However, as a result some existing
functional tests, which were using the CachingScheduler, are
updated to still test scheduling without allocations being
created in the placement service.

Over time we will likely remove the USES_ALLOCATION_CANDIDATES
variable in the scheduler driver interface along with the
compatibility code associated with it, but that is left for
a later change.

[1] Ia7ff98ff28b7265058845e46b277317a2bfc96d2

Change-Id: I1832da2190be5ef2b04953938860a56a43e8cddf
2018-10-18 17:55:36 -04:00
Chris Dent
8b4fcdfdc6 Add placement perf info gathering hook to end of nova-next
This change adds a post test hook to the nova-next job to report
timing of a query to GET /allocation_candidates when there are 1000
resource providers with the same inventory.

A summary of the work ends up in logs/placement-perf.txt

Change-Id: Idc446347cd8773f579b23c96235348d8e10ea3f6
2018-08-14 15:42:08 +01:00