53 Commits

Author SHA1 Message Date
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
Zuul
8b627fe68c Merge "Remove the CachingScheduler" 2018-10-25 13:22:53 +00:00
Zuul
7701eefb81 Merge "Rename tempest-nova job to follow conventions" 2018-10-23 11:08:25 +00:00
Zuul
55405ef31e Merge "Convert legacy-tempest-dsvm-neutron-src-oslo.versionedobjects job" 2018-10-23 08:29:39 +00:00
Zuul
f97c1ad1e3 Merge "Remove duplicate legacy-tempest-dsvm-multinode-full job" 2018-10-23 02:24:52 +00:00
Zuul
b9dc5cc1a1 Merge "Zuul: Update barbican experimental job" 2018-10-23 01:37:28 +00:00
Andreas Jaeger
8718c9718f Rename tempest-nova job to follow conventions
Follow the naming conventions from
https://docs.openstack.org/infra/manual/drivers.html#consistent-naming-for-jobs-with-zuul-v3
- a job defined in nova repo needs to start with nova, not tempest.

Thus rename tempest-nova to nova-tempest.

Change-Id: I457c9993d1af8b01503c9d4c61caff6f26951f52
2018-10-22 06:06:55 +02:00
Andreas Jaeger
2cb74d32dd Convert legacy-tempest-dsvm-neutron-src-oslo.versionedobjects job
Migrate experimental job legacy-tempest-dsvm-neutron-src-oslo.versionedobjects
to Zuul v3 native. We can just use the tempest-full job here, adding
required-projects will automatically check out the library from source
instead of installing it from pip.

Since this is the only user of the legacy job, define the job in the
nova repository.

Change-Id: I51155755a565a9a38084906a57407e87083fb362
2018-10-22 06:06:19 +02:00
Zuul
d7e76f8cad Merge "Migrate nova v2.0 legacy job to zuulv3" 2018-10-19 08:19:45 +00: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
ghanshyam
0e14434dbc Remove duplicate legacy-tempest-dsvm-multinode-full job
Experimental job 'legacy-tempest-dsvm-multinode-full'
is duplicate of 'tempest-multinode-full' job which is running
in check pipeline as n-v job.

This commit remove the legacy duplicate job from experimental pipeline.

Change-Id: Id4f51ae3125d6c8e3fa66244673c55693234da5c
2018-10-16 10:46:08 +00:00
ghanshyam
f7a4ba969a Migrate nova v2.0 legacy job to zuulv3
This commit migrate the legacy-tempest-dsvm-nova-v20-api
job to zullv3 native with new job - tempest-nova-v2-api

Change-Id: I6915b7deca20eabb88c231b287586c64cdcf3646
2018-10-15 03:01:10 +00:00
Andreas Jaeger
9eeee27cfa Zuul: Update barbican experimental job
Barbican has now in-tree Zuul v3 native jobs, use
barbican-simple-crypto-devstack-tempest instead of the legacy job.

Change-Id: I9c907a1650b0f24aa39422251c281b2a56dc50cd
2018-10-12 20:53:30 +02:00
Andreas Jaeger
01a08a8cba Use tempest-pg-full
The legacy job legacy-tempest-dsvm-neutron-pg-full is now named
tempest-pg-full - using the new tempest and Zuul v3 frameworks.

Change experimental job to use new job.

Change-Id: I10865188e4a43b2399f647124dfff8ade40b875c
Depends-On: https://review.openstack.org/609530
2018-10-12 10:07:19 +02:00
Andreas Jaeger
ad2ed8b149 Replace openSUSE experimental check with newer version
We're migrating now to openSUSE 15.0 (yes, 15.0 is newer than 42.3),
remove legacy job and replace with native Zuul v3 job running python3.

Change-Id: Ib0b49fead613d06001df348831c022edfe8d0fd1
Depends-On: https://review.openstack.org/609359
2018-10-10 18:00:48 +02:00
Matt Riedemann
75c81b1cd5 Remove redundant irrelevant-files from neutron-tempest-linuxbridge
Since we only run the job on nova/networking and libvirt/vif changes
we can drop the redundant filters for other irrelevant files.

Change-Id: I4f07d957cf6f1fbff49c32ccec95496a105ff5d4
2018-10-01 11:54:28 -04:00
Matt Riedemann
9de4c1befc Fix neutron-tempest-linuxbridge irrelevant-files
Change Ibce77d3442e21bbd5f5ce379c203542f1f31ce9e regressed
the irrelevant-files section of the neutron-tempest-linuxbridge
job which makes it run on all code changes to nova. When we
added the job to nova's check queue runs, we specifically
wanted to minimize its use to only changes in the nova/network
and libvirt/vif modules. This fixes the regression by putting
back the old irrelevant-files for that job and leaving a note
for future reviewers.

Change-Id: I00ec0282fce1a05fd314fd34bf429416a3cc9ace
2018-09-29 16:21:58 -04:00
ghanshyam
e18ed6b00c Follow devstack-plugin-ceph job rename
The devstack-plugin-ceph jobs have migrated to zuul v3
& in-repo and renamed[1], this commit use the new job.

Patch removing old job from openstack-infra/openstack-zuul-jobs[2]
[1] https://review.openstack.org/543048
[2] https://review.openstack.org/#/c/601316/

Change-Id: Ib3c71593a9fad48eb86ccc4f5c0209fbef89edb9
2018-09-12 11:38:11 +00:00
Andreas Jaeger
2785cc791e Cleanup zuul.yaml
Couple of cleanups:
* Use openstack-lower-constraints-template, remove jobs that are part
  of templates.
* Use openstack-tox-cover template, this runs the cover job
  in the check queue only. Remove post job.
* Sort list of jobs and templates
* Use dsvm-irrelevant-files for newly imported jobs

Change-Id: Ibce77d3442e21bbd5f5ce379c203542f1f31ce9e
2018-09-11 06:46:54 +02:00
Doug Hellmann
42975e623b add python 3.6 unit test job
This is a mechanically generated patch to add a unit test job running
under Python 3.6 as part of the python3-first goal.

See the python3-first goal document for details:
https://governance.openstack.org/tc/goals/stein/python3-first.html

Change-Id: If2587dbbbdc88ab01d1fb16ab6b5efe446453957
Story: #2002586
Task: #24315
2018-09-10 21:55:48 +02:00
Doug Hellmann
b3dadd23e4 switch documentation job to new PTI
This is a mechanically generated patch to switch the documentation
jobs to use the new PTI versions of the jobs as part of the
python3-first goal.

See the python3-first goal document for details:
https://governance.openstack.org/tc/goals/stein/python3-first.html

Change-Id: I102d40d5897a4f0963dffe6d4c25186c057fa856
Story: #2002586
Task: #24315
2018-09-10 21:55:48 +02:00
Doug Hellmann
05ab017907 import zuul job settings from project-config
This is a mechanically generated patch to complete step 1 of moving
the zuul job settings out of project-config and into each project
repository.

Because there will be a separate patch on each branch, the branch
specifiers for branch-specific jobs have been removed.

Because this patch is generated by a script, there may be some
cosmetic changes to the layout of the YAML file(s) as the contents are
normalized.

See the python3-first goal document for details:
https://governance.openstack.org/tc/goals/stein/python3-first.html

Change-Id: Id44018e3c19d96f5f2dd104d0ed4d85973cd84e8
Story: #2002586
Task: #24315
2018-09-10 21:55:44 +02:00
Zuul
7ebbca1b22 Merge "Add tempest-slow job to run the tempest slow tests" 2018-08-08 23:57:20 +00:00
ghanshyam
65cdcf4aaa Define irrelevant-files for tempest-full-py3 job
tempest-full-py3 job runs on nova check and gate pipeline
as part of 'integrated-gate-py35' template.

Unlike tempest-full or other job, nova job definition list on
project-config side[1] does not define the irrelevant-files for
tempest-full-py job which leads to run this job on doc/test file
only change also.

This commit defines the irrelevant-files for tempest-full-py3 on
nova's zuul.yaml.

Closes-Bug: #1785425

[1] 57907fbf04/zuul.d/projects.yaml (L9283)

Change-Id: I887177c078a53c53e84289a6b134d7ea357dfbef
2018-08-06 15:05:52 +00:00
Matt Riedemann
f6390f71ff Add tempest-slow job to run the tempest slow tests
By default, tempest-full jobs don't run the "slow" tests
which test useful things like encrypted volumes, swap
volume, etc. The slow tests aren't part of the default
tempest run since they can be, well, slow.

Tempest has tempest-slow job now which run all the slow
tagged tests.[1]

Detailed discussion on ML[2].

[1] http://git.openstack.org/cgit/openstack/tempest/tree/.zuul.yaml#n146
[2] http://lists.openstack.org/pipermail/openstack-dev/2018-May/130394.html

Change-Id: I5cb829beebcc59de682cba927f5b01793ec70d00
2018-08-06 07:59:03 +00:00
Zuul
07f2fae3e1 Merge "Define common variables for irrelevant-files" 2018-08-01 09:33:51 +00:00
Andreas Jaeger
2d37336b21 Move legacy-tempest-dsvm-nova-os-vif in repo
change https://review.openstack.org/559401 moved
legacy-tempest-dsvm-nova-os-vif to os-vif repo and renamed it to
os-vif-ovs. Move the job from project-config set up to nova, it was
in experimental queue there.

Needed-By: https://review.openstack.org/583024
Change-Id: I86a9863fe3a6a9e132bf451d57349c08e4328ed4
2018-07-16 21:14:20 +02:00
Matt Riedemann
fb730473fa Define common variables for irrelevant-files
We can define common variables for irrelevant-files
used across various dsvm and functional jobs and then
reference them using node anchors to avoid duplication.

Change-Id: Ife046b91c96dd300e8c46125b75623d8e12b8da3
Co-Authored-By: Stephen Finucane <stephenfin@redhat.com>
2018-06-29 11:38:54 +01:00
Matt Riedemann
17b3bae64c Use ironic-tempest-dsvm-ipa-wholedisk-bios-agent_ipmitool-tinyipa in tree
ironic-tempest-dsvm-ipa-wholedisk-bios-agent_ipmitool-tinyipa is
defined in the ironic repo but nova uses it because it's defined
in the project-config repo with it's own irrelevant-files list.
Due to a recent change in zuul [1], the definition from project-config
overrides the irrelevant-files from the job definition in ironic and
results in us running this job on things like docs-only changes in
nova, which is not awesome.

This change moves the job usage in-tree from project-config and updates
the irrelevant-files list to match nova-dsvm-base.

Since project-config is branchless, we'll have to backport this in-tree
change to nova's stable branches to continue running this job on nova
stable branches once the override is removed from project-config.

[1] http://lists.openstack.org/pipermail/openstack-dev/2018-June/131304.html

Change-Id: I9435fe84c8dc8a6f35ffb195ddbf71ca34edb242
Closes-Bug: #1776981
2018-06-28 12:37:19 -04:00
Matt Riedemann
aa67211acb Make nova-lvm run in check on libvirt changes and compute API tests
This changes the nova-lvm job to run in the check queue on libvirt
driver changes only, and only runs the tempest compute API tests
to save time since we don't need to run things like the cinder,
glance, neutron etc API tests.

Once we're comfortable with the stability of this job we can
make it voting and gating.

This is in response to bug 1771700 which could have been prevented
if we were gating on the nova-lvm job on libvirt changes.

Change-Id: Ieaf00bcb6cb885e544d05b6f7276b6470b123258
Related-Bug: #1771700
2018-06-27 21:28:15 +00:00
Zuul
dcdcb27360 Merge "add lower-constraints job" 2018-05-15 01:12:25 +00:00
Doug Hellmann
e95af3f91c add lower-constraints job
Create a tox environment for running the unit tests against the lower
bounds of the dependencies.

Create a lower-constraints.txt to be used to enforce the lower bounds
in those tests.

Add openstack-tox-lower-constraints job to the zuul configuration.

See http://lists.openstack.org/pipermail/openstack-dev/2018-March/128352.html
for more details.

Change-Id: Ic28558ee6481d49a9b4e5dc2c4182504e330448f
Signed-off-by: Doug Hellmann <doug@doughellmann.com>
Co-Authored-by: Eric Fried <efried@us.ibm.com>
Co-Authored-by: Jim Rollenhagen <jim@jimrollenhagen.com>
2018-05-14 16:47:07 +00:00
Matt Riedemann
fd9aebee6b Fix irrelevant-files in nova-dsvm-multinode-base
The nova-live-migration test hook configuration is in
nova/tests/live_migration/hooks and because of the
irrelevant-files list on the job, changes to those
setup scripts are not self-testing. This change fixes
the regex so we can self-test the nova-live-migration
job changes.

Change-Id: Ia7e35d483f660e98eea5e109e010f77d5419af85
2018-05-11 12:03:11 -04:00
Zuul
a0ff84e0ba Merge "Migrate tempest-dsvm-multinode-live-migration job in-tree" 2018-05-10 04:39:52 +00:00
melanie witt
7d8246244d Migrate tempest-dsvm-multinode-live-migration job in-tree
This defines the nova-live-migration job, based on the
tempest-dsvm-multinode-live-migration job from openstack-zuul-jobs.

The branch override parts of the job definition are removed since
the job will be defined per-branch now.

Change-Id: Idea86d6bb648b1e6fef8813dbe569724ce81a750
2018-05-07 22:39:44 +00:00
Matt Riedemann
483531ba33 Use Queens UCA for nova-multiattach job
The dependent change to devstack makes devstack use the
Queens Ubuntu Cloud Archive which has libvirt 4.0.0 so we
can remove the flag from the job which disabled the UCA
in devstack since the versions of qemu and libvirt in the
Pike UCA wouldn't work for multiattach.

This also allows us to make the job voting and gating again.

Closes-Bug: #1763382

Depends-On: https://review.openstack.org/554314
Depends-On: https://review.openstack.org/560931
Change-Id: I0962474ff6dfc5fa97670c09a1af97a0f34cd54f
2018-04-12 16:07:52 -04:00
Matt Riedemann
406c9d13db Remove the branch specifier from the nova-multiattach job
For in-tree job definitions, the job is branch-specific
by design, so we don't need the stable branch exclusion
specifier as it won't run on those branches anyway since
it's not defined for those branches.

Related to https://storyboard.openstack.org/#!/story/2001839
Related-Bug: #1763382

Change-Id: I78dead482e2ed8262745cb08c9f4ab71035adb33
2018-04-12 10:55:48 -04:00
Matt Riedemann
cb6c8ca1a7 Make the nova-multiattach job non-voting temporarily
Since Icb971831c8d4fe5f940d9e7993d53f1c3765e30f merged
in devstack to use the Queens UCA, the nova-multiattach
job has been failing to start nova-compute due to permission
errors connecting to libvirt, which probably has something
to do with the stack user not having access to the proper
libvirt(d) group.

It's weird since this was working in change
I0962474ff6dfc5fa97670c09a1af97a0f34cd54f to make the
nova-multiattach job use the Queens UCA.

Anyway, let's make it non-voting to stop the bleeding while
we can figure out the actual problem.

Change-Id: I3911c902cecfa8e66fccffd9fe0e4f462eacd588
Related-Bug: #1763382
2018-04-12 09:52:42 -04:00
Zuul
e7a9dd4589 Merge "Migrate tempest-dsvm-cells job to an in-tree job definition" 2018-03-23 03:29:33 +00:00
Zuul
c810b94328 Merge "Make the nova-next job voting and gating" 2018-03-12 22:38:43 +00:00
Matt Riedemann
6435b3745a Migrate tempest-dsvm-cells job to an in-tree job definition
This defines the nova-cells-v1 job, based the tempest-dsvm-cells
job from openstack-zuul-jobs.

The branch override parts of the job definition are removed since
the job will be defined per-branch now (we'll also have to backport
this to stable/queens).

There will be related changes to project-config, devstack, tempest
and openstack-zuul-jobs on this topic branch to use the new job name.

Part of blueprint remove-nova-network

Change-Id: I25c87f27c69e0cdb74e8553305a09cb85f43d87e
2018-03-08 18:08:37 -05:00
Zuul
489a8f5bf3 Merge "Add a nova-caching-scheduler job to the experimental queue" 2018-03-07 14:55:55 +00:00
Matt Riedemann
21be5060e1 Make the nova-next job voting and gating
Bug 1747511 was fixed with change
I363182e916480c734cc37f279e8e89c8f3ec653c in Queens
so we can make the nova-next job voting now.

We want this job voting and gating since it tests
some things not found in other job configurations,
like TLS proxy, service user tokens, and post-test hooks
for nova-manage commands like archive_deleted_rows.

Change-Id: I4cfc3b100f8829deb97e491f40a3020b3c8eb026
Related-Bug: #1747511
2018-03-05 18:49:46 -05:00
Matt Riedemann
0c9225bece Add a nova-caching-scheduler job to the experimental queue
This adds an experimental queue job to run non-slow tempest
API and scenario tests using the CachingScheduler as the
scheduler driver.

A blacklist is added since there are a few tests that rely on
filters which don't work well with the CachingScheduler.

The CachingScheduler is deprecated, but this is useful to have
when we're making changes to the scheduler or flows within the
code that involve the scheduler, such as the alternate hosts
work.

Change-Id: I8630ea11c3067ed934de2ef27a63432418e98c33
2018-02-16 16:37:09 +00:00
melanie witt
4d5e370b8f Test websocketproxy with TLS in the nova-next job
Depends-on: Ib29d3f5f18533115b9c51e27b373e92fc0a28d1a

Change-Id: I203163b09613734b3e792bee7e5a931f0888378e
2018-02-14 14:17:02 +00:00
Matt Riedemann
a016e02d4f Move the nova-next job in-tree and update it
This moves the legacy-tempest-dsvm-neutron-nova-next-full
job from openstack-zuul-jobs in-tree and updates a
few things since it's now branch specific:

- The cells v2 and placement stuff can be removed since those
  are required now (they were optional when this job would run
  against newton changes).
- Use nova/gate/post_test_hook.sh rather than the symlink under
  nova/tools/hooks/.

The job is currently non-voting and needs to remain that way
until bug 1747511 is fixed.

According to the branch restrictions in project-config, apparently
this job is only running against stable/newton (which no longer
exists) and master, presumably when master was pike. We should also
run this job against stable/pike for the service user test coverage
and post_test_hook.sh run, so we'll likely backport this change
to stable/pike as well.

The related project-config change is:

I36d96f89b3e5323746fcbcef5cc7e4d0384a184d

Change-Id: I24a5f73c29094a23e2fdef8ee8b43601300af593
2018-02-12 12:05:39 -05:00
Matt Riedemann
a84e7ae506 Address comments from I51adbbdf13711e463b4d25c2ffd4a3123cd65675
- renames the base job that is for dsvm jobs
- removes the unused legacy branch override stuff
- moves the comment about keeping the jobs sorted

Change-Id: Idf20864fe3371e4bbafb8c18bcf979a8f3c3eb62
2018-02-06 16:53:36 -05:00
James E. Blair
fc1cecbe4c Zuul: Remove project name
Zuul no longer requires the project-name for in-repo configuration.
Omitting it makes forking or renaming projects easier.

Change-Id: I27533519a8d77bae6fb58b61bf41daf5fca50d3c
2018-02-03 08:04:14 +01:00
Zuul
5e9cb49b0a Merge "Add the nova-multiattach job" 2018-02-02 23:14:09 +00:00
Matt Riedemann
862c6fb794 Add the nova-multiattach job
This change adds a new voting check/gate queue job for running
volume multiattach compute API tests.

This configures devstack to enable tempest for volume multiattach
support and disables the Pike UCA since we need qemu<2.10 for
libvirt to work with multiattach volumes.

Depends on the following devstack patch to add the
ENABLE_VOLUME_MULTIATTACH variable. The devstack patch
depends on the tempest patch that adds the volume multiattach
tests and the tempest patch depends on the series of nova
changes that add volume multiattach support.

Depends-On: I46b7eabf6a28f230666f6933a087f73cb4408348

Depends on the following nova patch to fix a bug when
creating a server snapshot of a paused instance when not
using the Pike UCA:

Depends-On: If6c4dd6890ad6e2d00b186c6a9aa85f507b354e0

Depends on the tip of the series of Tempest tests which include
additional tests for resize with a multiattach volume and swap
volume with a multiattach volume.

Depends-On: I751e9e4237e2997e102dd13c4f060deaea73d543

Part of blueprint multi-attach-volume

Change-Id: I51adbbdf13711e463b4d25c2ffd4a3123cd65675
2018-01-30 03:50:42 +00:00