This it the default value defined by zuul-jobs. There's no need to
manually configure it.
[1] 6228b71b07/roles/tox/defaults/main.yaml (L6)
Change-Id: Ib8ffb8a3ae3bfdd2cfedd8313b9221945e392141
Signed-off-by: Stephen Finucane <sfinucan@redhat.com>
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
Mention that nova-grenade-multinode and nova-live-migration
run under python 3 in the job description since it's not
obvious from the job names.
Change-Id: I86f56b0238c72d2784e62f199cfc7704b95bbcf2
It's Ussuri. We can *finally* stop testing Python 2 [1]. Time to party.
We don't attempt any cleanup but simply stop testing with Python 2,
indicate that we only support Python 3 via 'setup.cfg' and remove any
Python 2 only dependencies. Our 'tox.ini' is modified such that
'functional' now runs with 'python3', whatever that may point to, though
the gate will only use a versioned variant (currently
'functional-py36').
This should free up a significant amount of resources from the gate and
let us start using Python 3 idioms in our code. Win-win.
[1] https://governance.openstack.org/tc/resolutions/20180529-python2-deprecation-timeline.html#python2-deprecation-timeline
Change-Id: Ie1a0cbd82a617dbcc15729647218ac3e9cd0e5a9
Signed-off-by: Stephen Finucane <sfinucan@redhat.com>
This has been unused since I4630066731f12c42091ddf9dd3159e0494df88b1,
which converted the 'nova-lvm' job to zuul v3 native format.
Change-Id: If9e2eb3bbda53c71846e8a08ad507d3faa07722d
Signed-off-by: Stephen Finucane <sfinucan@redhat.com>
We dropped the tempest-full python2 job from our zuul config awhile
back with change I93e938277454a1fc203b3d930ec1bc1eceac0a1e. Since we
track ceph job health by how its failure rate compares with our basic
tempest full job, this updates our config to run the python3 version
of the ceph job by default and drops the python2 version of the job.
Change-Id: I92e01b896751f7f29a0b2b826c33cb2c74b8ced4
The tempest-slow-py3 job is, well, very slow. It takes
over 2.5 hours sometimes to complete. There are a few
reasons beyond it just running slow tests but it runs
all slow tests serially and for nova it's testing things
we don't care about like network scenario tests like
test_slaac_from_os. The one benefit we get from running
tempest-slow-py3 is that it's multinode and there are
certain slow test scenarios for multinode that are
important for test coverage.
This change drops the tempest-slow-py3 job from our
job list and changes nova-next to be multinode. The
nova-next job runs a select set of tempest compute API
and scenario tests only and runs them concurrently, which
in the gate is 4 workers at a time. The nova-next job
will take a bit longer since we have to setup the subnode
now but overall it should still be faster than the
tempest-slow-py3 job and we'll save on one more node
required from nodepool to run jobs against nova changes.
The USE_PYTHON3 variable can be dropped from the nova-next
job definition now that it extends tempest-multinode-full-py3.
Depends-On: https://review.opendev.org/690469/
Change-Id: I1b7d71e833bf0743f22d7fa0241c9d1bbcd0faac
opensuse-150 nodeset is referring to openSUSE 15.0, which is still in
maintenance but openSUSE 15.1 has been released already. "opensuse-15"
is going to refer to the "latest openSUSE 15.x" build released and
working for OpenStack going forward, so add this nodeset and use
it by default going forward.
The new job tempest-full-py3-opensuse15 use the opensuse-15 nodeset,
change tempest-full-py3-opensuse150 to tempest-full-py3-opensuse15.
Change-Id: Ida6b3f115d987b85e811be246468acd290f6c911
Changes to docs to handle redirects like [1] should not
trigger functional jobs. Note that functional-irrelevant-files
does not just blindly ignore all changes to the docs/* path
because we do need to run functional test jobs for changes to
doc/notification_samples.
[1] Iad18f355a20261313ddb3dafd302ed66ebca64bc
Change-Id: I4c2cb97de1fc8e1ed80fa22680621fd4f6390cfd
This patch extends the existing integration test for
heal_allocations to test the recently implemented port
allocation healing functionality.
Change-Id: I993c9661c37da012cc975ee8c04daa0eb9216744
Related-Bug: #1819923
Changes in [1] could potentially break a mixed-compute-version
environment as we don't have grenade coverage for cold migrate and
resize. This adds that coverage to the nova-grenade-multinode
job.
[1]https://review.opendev.org/#/c/655721/10
Change-Id: I81372d610ddf8abb473621deb6e7cb68eb000fee
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
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
Due to bug 1802143, devstack was ignoring variables set in the
$NOVA_CPU_CONF section of local_conf. Now that that bug has been fixed
(see the Depends-On) we can put those back in their rightful place.
This patch moves the [compute]resource_provider_association_refresh
setting, introduced via [1], accordingly.
[1] https://review.opendev.org/616033
Depends-On: https://review.opendev.org/672805
Change-Id: Ifa50748b6d6e91ac954d0a7a6060505fd45716d4
Related-Bug: #1802143
Compared to tempest-full-py3 and tempest-slow-py3
the nova-multi-cell job has been relatively stable
for the past couple of months so let's make it voting
so we don't regress multi-cell functionality.
Change-Id: I11081177abfe2fb69fbd8fc17464c9f08962ab4c
This adds a nova-specific variant of the
tempest-smoke-py3-osprofiler-redis job to nova's
experimental queue. This could be useful in comparing
before and after results on nova changes that are
related to performance, although that's admittedly
hard in a CI environment where we could be running on
different node providers (we could pin that though?)
and differing levels of noisy neighbors during each
job run.
Change-Id: I2dcb5c1e8289eaf7977b38a3d26e74183823c42b
This updates the job to run with python3 and also
disables the cinder-backup service since we are not
testing anything that needs it - so this saves a bit
of time stacking the test node.
Change-Id: I68ad1716b5ee9c58418a8e687bb521ee75495585
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
We don't run any tests that require the cinder backup
service in the nova-next job nor do we care to so save
some time in stacking and space on the node by not
installing that service.
Change-Id: I6991a231366908920847fa1b8375ece8d8b35268
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
As part of Train community goal 'Support IPv6-Only Deployments and Testing'[1],
Tempest has defined the new job 'tempest-ipv6-only'(adding
in Depends-On patch) which will deploy services on IPv6 and run smoke
tests and IPv6 related tests present in Tempest.
This job will be part of Nova, Neutron, Cinder, Keystone, Glance, Swift
gate.
Verification structure will be:
- 'devstack-IPv6' deploy the service on IPv6
- 'devstack-tempest-ipv6' run will verify the IPv6-only setting and listen address
- 'tempest-ipv6-only' will run the smoke + IPv6 related test case.
This commit adds the new job 'tempest-ipv6-only' run on gate.
Story: #2005477
Task: #35909
Depends-On: https://review.opendev.org/#/c/671231/
[1] https://governance.openstack.org/tc/goals/train/ipv6-support-and-testing.html
Change-Id: I21cba258e4ad55681468c66060f4e0c1f4becbd4
tempest-full-py3 job run all services API and scenario tests (non slow)
and this job is part of Integrated-gate-py3 gate template which run on
multiple services (nova, neutron, cinder, glance, placement, swift, keystone)
check and gate pipeline.
Due to all services tests run in single tempest-full-py3 job, it has
been not so stable. Many times unrelated service test break other
project gate.
But not all those services are dependent of Nova. Dependent in term of
both way, not all services used by Nova or use Nova. Nova gate
does not need to run all those independent services tests. It can run only
Nova, Neutron, Cinder and Glance related tests.
Idea here is to make integrated-gate testing more stable without losing
the test coverage.
Tempest has new "integrated-gate-compute" template which will run only
Nova, Neutron, Cinder and Glance related tests[1].
This commit replaces the "integrated-gate-py3" template with new
"integrated-gate-compute".
ML discussion: http://lists.openstack.org/pipermail/openstack-discuss/2019-May/005871.html
[1] https://opendev.org/openstack/tempest/src/branch/master/.zuul.yaml#L594
Change-Id: I11dd1a94054ed29f70330906c1d95967b3de718c
Due to regression bug 1833902 we should have the option to
run the neutron job that tests the OVS hybrid plug configuration
on specific patches.
We could eventually consider running this in the check queue
like neutron-tempest-linuxbridge with a strict set of irrelevant
files but that would require some thought, i.e. we'd want to run
the job on changes to nova/compute/manager.py since the network
vif model bind events code is used in the ComputeManager and is
specific to OVS hybrid plug ports. Rather than get bogged down in
thinking up what that set is, this change takes the easy path and
just throws the job into the on-demand experimental queue.
Change-Id: Id5172d97b349abe59b47d1284e97943091652419
Related-Bug: #1833902
This reverts commit 47b73030cba7d67fe308c5b89c2a64e93d74bcd6.
The dependent devstack change fixes the issue so we can enable
vnc console tempest testing in the nova-multi-cell job.
Depends-On: https://review.opendev.org/661391/
Change-Id: Iad71b6e15bb91e51080cd9f940410dc9af791963
Related-Bug: #1830417
This addresses comments from the series:
* Remove usage-specific info from docstring
* Add note to nova-next job description "changelog"
* Add info about data migration to config option help
* Consolidate code under count_usage_from_placement conditional
* Consolidate variables for checking data migration doneness
* Remove hard-coded user_id and project_id from func test
* Re-word code comment about checking data migration doneness
Related to blueprint count-quota-usage-from-placement
Change-Id: Ida2de9256fcc9e092fb9977b8ac067fc1472c316
In I73f9dacd912331d209a6fa04eaf5591d94d720f2 the functional-py36
was made reusable by other projects by adding explicitly adding
nova to projects and explicitly stating the zuul work dir.
This change adds the other functional jobs.
Change-Id: Iaf2c1f87ae4a4ec2ecf6cc19220c6d15f8580321
Story: 2005562
NoVNCConsoleTestJSON.test_novnc is intermittently failing
in the multi-cell job when trying to get a vnc console for
an instance in cell2. It looks like requests aren't getting
routed to the novnc-cell2 service properly, so let's skip
novnc tests until the bug is fixed since we want to stabilize
this job to make it voting.
Change-Id: I74a4b392ccec66a7a80a117d1cdf83a418c7dcdc
Related-Bug: #1830417
This goal is to implement the process set out in the 2018-10-24 Python
Update Process TC resolution[1], for the Train cycle to ensure unit
testing is in place for all of the Tested Runtimes for Train[2].
In practice, this generally means adding unit tests for Python 3.7 and dropping
unit tests for Python 3.5. Using the Zuul template for Train will ensure that
all projects that support Python3 will be tested against the agreed runtime
versions, and make it easier to update them in future.
[1]https://governance.openstack.org/tc/resolutions/20181024-python-update-process.html
[2]https://governance.openstack.org/tc/reference/runtimes/train.html
Change-Id: I095770fabafda1a7735c2711d4df061a6dc2bb78
Depends-On: https://review.opendev.org/#/c/641878/
We'd like placement to be able to run this job itself. Instead of
duplicating it, we can simply use it directly. However, according
to discussions with the infra gang, to ensure that works properly
we need to make openstack/nova a required project and explicitly
set zuul_work_dir. These are the default values already when
used from nova itself.
Change-Id: I73f9dacd912331d209a6fa04eaf5591d94d720f2
Story: 2005562
With the dependent devstack fix we should be able to run
the n-novnc service in a multi-cell setup.
Depends-On: https://review.opendev.org/649473/
Change-Id: I6d2a564840a5ac4f4f7e803619d9962653bb5d6c
Related-Bug: #1822873
This adds a non-voting nova-multi-cell job which
is a 2-node job with 2 non-cell0 cells (cell1 and cell2).
The compute on the controller will be in cell1 and the
subnode compute will be in cell2.
Until cross-cell resize is supported, cold migration
has to be disabled since we can't cold migrate to
the same host (and there is only one compute host per
cell). As a result, resize to the same host is enabled
(it is normally disabled in the tempest multinode job).
The parent job enables live migration testing but since
we only have one host per cell and don't support live
migration across cells, the live migration tests are
also disabled.
The job is also setup to run with python3 since that
is the way of the future.
Non-essential services, like cinder-backup, are disabled
since we (1) won't need it for the tests we run and
(2) would like to save as much room on the hosts as possible
since we're running multiple cell conductors on the
controller host.
Since this is new and its already uncovered at least one
bug (bug 1826472), the job is non-voting in the check queue
for now until we're happy with its stability.
Related to blueprint cross-cell-resize
Change-Id: I8ad3f8bcbecf0f6b1d0f57e9f61ff21bd7fbe365
We already skip running the devstack/tempest integration jobs
for changes which only touch nova/tests/* but not the nova/test.py
module itself, so this adds that filter.
Change-Id: I8984e5b68ccb7d327b7ce16c50f19e46e769699a