177 Commits

Author SHA1 Message Date
Abhishek Kekane
7cff130795 Tempest tests for glance import workflow
This adds an initial test for glance image interoperable import
that uses the glance-direct method. It will skip if the server
does not support glance-direct.

Adding feature flag to enable the import tests as devstack on
stable branches cannot support image import feature.

Change-Id: I09e7fb4e7758edd5256ae70ceeea6f143466c3e3
2020-07-24 13:09:12 -05:00
Luigi Toscano
b4e0e2c7e7 zuul: clean up some legacy jobs
Replace legacy-tempest-dsvm-lvm-multibackend with its native version,
cinder-tempest-lvm-multibackend.

Remove legacy-tempest-dsvm-neutron-dvr-multinode-full, which was defined
as an experimental job in neutron and removed during the ussuri lifecycle.
See https://review.opendev.org/#/c/693630/
It seems neutron-tempest-dvr-ha-multinode-full should cover its use case.

Change-Id: I6edfd00f0c43cd0bfe688db5e43768288dd4c1c1
2020-07-15 15:40:28 +02:00
Zuul
257f3b009f Merge "Move ceph job to voting" 2020-05-30 16:14:20 +00:00
Zuul
006e8d175e Merge "Switch testing to Victoria testing runtime" 2020-05-11 02:04:23 +00:00
Ghanshyam Mann
de69845d75 Switch testing to Victoria testing runtime
Updating the testing template from ussuri to victoria
testing runtime
- https://governance.openstack.org/tc/reference/runtimes/victoria.html

Change-Id: If964909a73a52836e3adbb7b695f1c7322b81830
2020-05-05 14:35:52 +00:00
Martin Kopec
f62dbc1c22 Add tempest-cleanup ansible role
The patch adds a new ansible role called tempest-cleanup which will
allow us to test tempest cleanup in the gate jobs.

Change-Id: I2cef2da6fee13e622da07b890da88850fe420152
2020-05-05 12:07:51 +00:00
Ghanshyam Mann
8c5333b06a Move ceph job to voting
Currently ceph job is n-v, if I remember
correctly it was kept n-v due to its stability.

But it is stable and voting on many projects. With
n-v it is hard to monitor it all the time.

let's make it voting and if any new tests failing we
can add that in the ceph blacklist in advance.
Example: https://review.opendev.org/#/c/724866/

Change-Id: Ic484d233b325c887f0a19f3ec06376d403beb964
2020-05-01 18:29:44 -05:00
Zuul
7d1b080f17 Merge "Add Tempest gate job for stable/ussuri" 2020-04-30 22:20:00 +00:00
Zuul
5cc3ffce8c Merge "Remove the stable rocky from supported branch in Tempest master" 2020-04-29 21:54:31 +00:00
Ghanshyam Mann
f8b8987c5b Move the grenade-py3 job to new zuulv3 grenade job name
'grenade' is zuulv3 native job for py3 (because devstack is default to
py3 since Ussuri) which replace the old 'grenade-py3'
legacy job. 'grenade-py3' job is alias to the new zuulv3 native
'grenade' job but that is only for migration time. Later once
all switch to new job name, we will remvoe the 'grenade-py3' alias
job.

Change-Id: Iea355514ec7cc2a52ed5e88c356bcb1cdeadd639
2020-04-27 20:58:17 +00:00
Ghanshyam Mann
6d6bf5e6e8 Add Tempest gate job for stable/ussuri
Now we have stable/ussuri branch ready for devstack
and so does for all service projects.

This commit adds the Tempest testing for stable/ussuri
by adding new jobs running on stable/ussuri version of
openstack.

Depends-On: https://review.opendev.org/#/c/723605/

Change-Id: Ifa7887675d34ab8169347b69a8e1ff723b55e466
2020-04-27 17:18:15 +00:00
Ghanshyam Mann
ba416467e6 Remove the stable rocky from supported branch in Tempest master
Rocky is in Extended Maintainance state now so we can
remove this from supported branch and also remove its
jobs to run on master gate.

-https://releases.openstack.org/

Depends-On: https://review.opendev.org/#/c/722186/

Change-Id: I46f4abf07839fb5e8767635e2502e97e8409b8b8
2020-04-23 02:30:32 +00:00
Ghanshyam Mann
0fb306f2e0 Make tempest-multinode-full py2 job on py2
tempest-multinode-full is python2 version
of mutlinode testing for stable branches and
supposed to run on python 2 but it was left during
- I75868d5c9b6630fe78958ff89e58a0aced09a6b3

Change-Id: Ibec72b578424cb278006ac810bdd0359ec23de3f
2020-03-15 14:43:44 -05:00
Zuul
f61e18ff7b Merge "Remove devstack-plugin-ceph-tempest py2 job" 2020-03-04 04:04:41 +00:00
Ghanshyam Mann
d2bdd8c0b8 Remove devstack-plugin-ceph-tempest py2 job
devstack-plugin-ceph-tempest is py2 job and not
supposed to run on master gate. Moving
devstack-plugin-ceph-tempest-py3 from experimental pipeline
to check.

Change-Id: I8a15d919f9902315c4a8d27d73dabbcc5be8d8de
2020-03-02 01:40:41 +00:00
Slawek Kaplonski
8cb1b47481 Set 3h timeout for tempest-ipv6-only job
I saw in Neutron queue that default 2h timeout for this job wasn't
enough sometimes. So it's better to keep this job running a bit longer
sometimes rather than recheck everything.

Change-Id: I7c256f1ca5790cd13411d3af78ec97efcfd28b0a
2020-02-19 13:12:54 +01:00
Ghanshyam Mann
4062a5cebb Re-enable the stable rocky job
stable rocky is fixed and green now[1],
This commit re-enables those.

[1] https://review.opendev.org/#/q/topic:fix-stable-gate+(status:open+OR+status:merged)

Change-Id: Ia25c8022f6bf2a0015641ef097f09b29f34e6d16
2020-02-14 13:30:15 +00:00
Ghanshyam Mann
551e8d7a59 [ussuri][goal] Drop python 2.7 support and testing
OpenStack is dropping the py2.7 support in ussuri cycle.

Tempest is ready with python 3 and ok to drop the
python 2.7 support. Last Tempest version officially supported
for py2.7 is 23.0.0.

Now onwards, Tempest will test all stable branch with py3 jobs.
tempest-full and other py2 version of jobs definition are kept
for stable branch gate.

Complete discussion & schedule can be found in
- http://lists.openstack.org/pipermail/openstack-discuss/2019-October/010142.html
- https://etherpad.openstack.org/p/drop-python2-support

Ussuri Communtiy-wide goal:
https://governance.openstack.org/tc/goals/selected/ussuri/drop-py27.html

Change-Id: I75868d5c9b6630fe78958ff89e58a0aced09a6b3
2020-02-12 00:11:31 +00:00
Ghanshyam
535cfb05f9 Disable stable/rocky temporarily on Tempest master
Stable/rocky jobs are broken due to py2
drop by Tempest dependency.
- http://lists.openstack.org/pipermail/openstack-discuss/2020-February/012371.html

Fixes are on devstack stable/rocky and tempest side
- https://review.opendev.org/#/q/topic:fix-stable-gate+(status:open+OR+status:merged)

To get the Tempest fix and other patches merged
we need to disable the rocky jobs on master gate
temporary and bring them back once everything is fixed.

Tempest fix blocked due to stable/rocky jobs
-https://review.opendev.org/#/c/705870/

Change-Id: I2238387c42650aceb9bacf51a4116ce6887cc460
2020-02-06 15:41:50 -06:00
Ghanshyam
b0a8057fbb Drop python 3.5 support from Tempest
Tempest, its plugins and their dependencies in ussuri
cycle are python-requires>=py3.6 which makes distro not
having python 3.6 to do hack to install py3.6 etc.

We cannot do >py3.6 in basepython so one way is to drop the
py3.5 support and basepython to py3 so that it can choose
the available py version in env.

It time to drop the py3.5 from Tempest. Last supported version of
Tempest for py3.5 is 23.0.0.

oslo drop py2 so we need to remove the py2 unit test job which
is failing and blocking gate.

There is seoarate work to drop the py2 things from Tempest in
compplete set.

Change-Id: I872dbb57df46d1193c0d409bb00d56f372d295fe
Related-Bug: 1861308
2020-02-04 19:23:01 +00:00
Ghanshyam
64da1a1403 Remove the Queens stable branch jobs from master gate
Tempest 23.0.0 is released now, which marks the end of support
for Queens release - https://review.opendev.org/#/c/703521/

We do not need to run the Queens stable jobs on master gate now.

Depends-On: https://review.opendev.org/#/c/703521/
Change-Id: I2ae25eb7aa88258580a4163f617548df35e74bdb
2020-01-21 09:45:39 -06:00
Zuul
d3c82c7922 Merge "Drop old neutron-grenade job" 2019-12-11 19:03:00 +00:00
Slawek Kaplonski
c0a4346a4d Use python 3 on all nodes in multinode jobs
This fixes used python version on subnodes in jobs like
tempest-slow-py3 and tempest-multinode-full-py3

Change-Id: I851d2dbcb863f0e21e6cbcbb6b856ce1f3d3f092
Closes-Bug: #1853004
2019-11-19 15:00:15 +01:00
Zuul
86baf1d6ef Merge "Set irrelevant-files for bashate job" 2019-11-18 12:45:50 +00:00
Slawek Kaplonski
39f5153ff9 Drop old neutron-grenade job
This job is still running python 2.7. As we are dropping py2 support in
Ussuri cycle, lets drop this job now.
There is same job called "grenade-py3" which runs on python 3 already
and this is still used in project's CI.

Change-Id: I6a4ce001d6cbb4455386285c0d0a43be592e57d7
2019-11-14 11:48:54 +01:00
Zuul
9ef4316091 Merge "Remove unused opensuse150 job definition" 2019-11-12 22:48:39 +00:00
Dirk Mueller
8557f46538 Remove unused opensuse150 job definition
After all remaining users have been migrated we can
remove this one.

Depends-On: https://review.opendev.org/692035
Depends-On: https://review.opendev.org/692526
Change-Id: I62c2f80aa46133948a084775e72ed027c8005407
2019-11-01 10:09:20 +00:00
Matt Riedemann
f66aea04a5 Disable c-bak service in tempest-full* jobs
Cinder backup tests suffer from a high failure rate and
given they do not interact with many other services (glance
and swift for the most part it looks like) we should disable
them from running in the tempest-full job which is part of
the integrated-gate project template, which is what this change
does.

My recommendation would be to make sure cinder backup test
coverage is happening in some other non-integrated-gate jobs
which are running on cinder changes already, like the
cinder-tempest-dsvm-lvm-lio-barbican job (which is voting but
not gating on cinder changes).

This should also help with bug 1783405 where tempest-full
can timeout due to backup tests which aren't marked slow.

c-bak was already disabled in tempest-full-py3 because
swift is disabled but this copies the same note to the
tempest-full-py3 job definition.

Change-Id: I9d39d9d7d706ba3fcba5ff352e8c9e31ab4639a2
Related-Bug: #1483434
Related-Bug: #1745168
Related-Bug: #1783405
Related-Bug: #1813217
2019-10-17 19:48:24 +00:00
Zuul
7fdd39c6db Merge "switch to the newly created opensuse-15 nodeset" 2019-10-16 19:02:42 +00:00
Ghanshyam Mann
910f9c5202 Add Tempest gate job for stable/train
Now we have stable/train branch ready for devstack
and so does for all service projects.

This commit adds the Tempest testing for stable/train
by adding new jobs running on stable/train version of
openstack.

Change-Id: I0ea8008ad0ef18b9e45c41f9ba40a70fd6d57b6a
2019-10-04 17:30:00 +00:00
Masayuki Igawa
f2104a8460
Set irrelevant-files for bashate job
This commit sets the tempest-irrelevant-files-2 for the bashate job. We
just need to run the job when we change bash scripts. Currently, bash
scripts are located in the tools/ directory only. So,
"tempest-irrelevant-files-2" is better than "tempest-irrelevant-files".

Change-Id: I0f55ffaa844736056769f1fbeca82fc0cb0a9a86
2019-09-25 11:47:23 +09:00
Dirk Mueller
f352241b07 switch to the newly created opensuse-15 nodeset
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.

This is the remaining work to be done after https://review.opendev.org/#/c/667539
got merged earlier

Change-Id: I3c0e14c606c88b5deecfad71bc156e53335d543e
2019-09-18 14:00:55 +02:00
Masayuki Igawa
3044a29a17
Add irrelevant files to .zuul.yaml
This commit adds 4 irrelevant files to both "irrelevant-files" and
"irrelevant-files-2". We don't need to run tempest tests with updating
such files because they don't affect tempest tests.

Change-Id: I6f84abc1b9273f38b99678edaff54deb0fd99e0c
2019-09-17 15:30:54 +09:00
Masayuki Igawa
f33ae3a5b4
Remove required projects for sanity job
This commit removes required projects for the sanity job. It should be
better to remove them since we don't need for sanity checking.

Change-Id: Iad2f9f3d08aa1a422a6a94cd56467a16f683fa3b
2019-09-03 17:21:19 +09:00
Zuul
2394557b4f Merge "Make plugin-sanity-check job as voting" 2019-09-02 16:12:32 +00:00
Zuul
cf50c87d69 Merge "Remove the Pike stable branch jobs from master gate" 2019-08-04 17:22:45 +00:00
Zuul
236a14bf3c Merge "Introduce bashate" 2019-08-02 02:53:28 +00:00
Jens Harbott (frickler)
6b4232b70f Merge "Revert "Use memcached based cache in nova in all devstack-tempest jobs"" 2019-08-01 14:01:52 +00:00
Jens Harbott (frickler)
924a035886 Revert "Use memcached based cache in nova in all devstack-tempest jobs"
This reverts commit eb0a2cc5f240d52efa3a58c5a1ba8821bae3147e.

This break jobs that do not deploy nova, like ironic, see e.g. http://logs.openstack.org/98/670698/5/check/ironic-standalone/d9d3d0e/job-output.txt.gz#_2019-07-31_03_56_36_492216

Change-Id: I91cd10b1b3cd5c825dec34fcb814f6b9dc4460c8
2019-07-31 11:07:31 +00:00
Zuul
629a5a3d5b Merge "Setup framework for IPv6-only deployment verification" 2019-07-30 11:08:47 +00:00
Zuul
cf9f6da80b Merge "Use memcached based cache in nova in all devstack-tempest jobs" 2019-07-30 10:02:03 +00:00
Masayuki Igawa
de1153b361
Introduce bashate
This commit introduces bashate[0] which is a code style checker for bash
scripts. We already have some bash scripts in Tempest repo. So, it might
be good to check the style automatically.

Some scripts under the tools directory are also fixed due to the bashate
violation.

Change-Id: I07820f10387552f93a9d8891b58a8c7fcdb83046
2019-07-30 18:02:07 +09:00
Ghanshyam
a0b8ca43e4 Setup framework for IPv6-only deployment verification
Devstack IPv6 base job 'devstack-IPv6' setup the IPv6 setting
to deploy the services to listen on IPv6 address.

Tempest 'devstack-tempest-ipv6' job derived from 'devstack-IPv6'
job adds the playbooks to run the tests.

As part of Train community goal 'Support IPv6-Only Deployments',
we will expand the 'devstack-tempest-ipv6' job to do
IPv6-only deployments verification.

This commit define the new roles of 'ipv6-only-deployments-verification'
which will be invoked as part of run phase of 'devstack-tempest-ipv6' job.
This role will do IPv6-only setting and deployments verification via
tools/verify-ipv6-only-deployement.sh

IPv6 verification script can be extended further to perform more checks
and via project specific test case. Those tests will run as part of project
specific child jobs.

The 'devstack-tempest-ipv6' job will be used as parent for project specific
IPv6-only job. Those child job can extend the project specific IPv6 verification
by defining new playebook for post-run. That way the base verification
done in 'devstack-tempest-ipv6' will still run in addition to project specific
verificaiton and tests run.

Verification structure will be:
- 'devstack-IPv6' deploy the service on IPv6
- 'devstack-tempest-ipv6' run will verify the IPv6-only setting and listen address
- Child jobs derived from 'devstack-tempest-ipv6' will run the IPv6 related test case or
  any further IPv6 deployment verification.

This commit also adds the new job 'tempest-ipv6-only' which will run smoke
and ipv6 related tests present in Tempest. This job will be used to run
on 6 services (Nova, Neutron, Cinder, Keystone, Glance, Swift) deployed
by devstack.

Story: #2005477
Task: #35923

Change-Id: Ie1e5e5e02ee45ab7a4aae0f35bdb42afc2c3fe2e
2019-07-29 07:37:33 +00:00
Slawek Kaplonski
eb0a2cc5f2 Use memcached based cache in nova in all devstack-tempest jobs
Using memcached based cache for metadata api to cache data for
instance always after firts metadata request is send can solve
problems with unable to ssh to instance due to not configured
public-key on instance.

In Nova metadata api service data related to one instance should
be cached after it is collected first time. So e.g. CirrOS based
image first sends request to get instance-id and next request is
to get public-key.
If those two requests will be processed by 2 different workers on
Nova's side, it will collect all data for instance twice. And if
this will take more than 10 seconds in case of request to get
public-keys, CirrOS script will fail and not configure public-key
on guest VM.

Using memcached based script will make this cached data available
for each worker so it will be cached always during processing
instance-id request. And this request for instance-id is retried
by CirrOS image in case of failure so this shoudn't cause problems.

Change-Id: I8efedb8c5ae073bd2cb4034369bfcff4b67eb868
Closes-bug: #1836642
Closes-bug: #1808010
2019-07-26 07:34:47 +00:00
Zuul
0550d297ef Merge "Remove duplicated irrelevant-files for sanity check" 2019-07-25 19:01:00 +00:00
Zuul
504190d2ad Merge "Add Python 3 Train unit tests" 2019-07-19 10:24:22 +00:00
Masayuki Igawa
51c51fc85d
Remove duplicated irrelevant-files for sanity check
This commit removes duplicated irrelevant-files for sanity-check in the
job definition. We have the same entries in the later. So we can remove
the redundancy.

Change-Id: I11e2054758fb9d4292e7cc64b58017c3e462c939
2019-07-19 11:10:54 +09:00
Corey Bryant
7409c72cb3 Add Python 3 Train unit tests
This is a mechanically generated patch to ensure unit testing is in place
for all of the Tested Runtimes for Train.

See the Train python3-updates goal document for details:
https://governance.openstack.org/tc/goals/train/python3-updates.html

Note: This diverges from the Train goal as it does not drop the
openstack-python35-jobs. As tempest is branchless it needs to continue
supporting Python 3.5.

Change-Id: Ie702ca637afb8229b6e605abcec25550bc9a0673
Story: #2005924
Task: #34240
2019-07-16 10:12:19 -04:00
Ghanshyam
95358523e4 Define the Integrated-gate-object-storage gate template
tempest-full job run all services API and scenario tests (non slow)
and this job is part of Integrated-gate gate template which run on
multiple services (nova, neutron, cinder, glance, placement) check
and gate pipeline.

But there are many unrelated tests run on each project gate. For example,
neutron gate run cinder only tests and fail due to cinder bugs. There is
no point of breaking the neutron gate due to cinder only test failure and
slow down the neutron development phase.

This is what we dicussed in Train PTG in denver to improve the integrated
gate[1] and came up with idea of split the integated-gate template into
much logical way so that only dependent services tests run on their gate.

One way was to move the service only tests to service tempest plugin side
but Tempest is used by interop as well as on production cloud testing so
moving the test is not good idea.

This commit propose the idea of defining the 'Integrated-gate-object-storage'
gate template for swift gate which will run only Swift, Cinder and glance tests.

ML discussion: http://lists.openstack.org/pipermail/openstack-discuss/2019-May/005871.html

Next step will be to replace the Integrated-gate-py3 template with new
Integrated-gate-object-storage template on swift gate.

[1] https://etherpad.openstack.org/p/qa-train-ptg

Change-Id: I70851d41174462b83cc8c525cecdb1b3d65e4ec7
2019-07-16 04:37:49 +00:00
Ghanshyam
ee7fd1f7e9 Define the Integrated-gate-compute gate template
tempest-full job run all services API and scenario tests (non slow)
and this job is part of Integrated-gate gate template which run on
multiple services (nova, neutron, cinder, glance, placement) check
and gate pipeline.

But there are many unrelated tests run on each project gate. For example,
neutron gate run cinder only tests and fail due to cinder bugs. There is
no point of breaking the neutron gate due to cinder only test failure and
slow down the neutron development phase.

This is what we dicussed in Train PTG in denver to improve the integrated
gate[1] and came up with idea of split the integated-gate template into
much logical way so that only dependent services tests run on their gate.

One way was to move the service only tests to service tempest plugin side
but Tempest is used by interop as well as on production cloud testing so
moving the test is not good idea.

This commit propose the idea of defining the 'Integrated-gate-compute'
gate template for nova gate which will run only nova, neutron, cinder
and glance tests.

ML discussion: http://lists.openstack.org/pipermail/openstack-discuss/2019-May/005871.html

Next step will be to replace the Integrated-gate-py3 template with new
Integrated-gate-compute template on nova gate.

It will also help to disable the non-nova related serviecs and tests which
cannot be disabled from tempest-full job.

[1] https://etherpad.openstack.org/p/qa-train-ptg

Change-Id: I807d4cac6214395df292a6955686ea44677c3481
2019-07-16 04:37:34 +00:00