Added task to install proper version
of tox(<4) so the job won't fail and
set the job as voting again. Set
ensure_tox_version to <4 for zed admin
job and admin plugins job (since it failed,
on tox>4 related issue too.
python 3.6 and 3.7 are dropped (upstream tooling as e.g.
Devstack doesn't support this those anymore) together with
train and ussuri jobs.
refstack-client jobs are non-voting now until a fix on
refstack-client's side has landed. Also victoria jobs are
marked as non-voting because they require a patch on devstack's
side which isn't ready to be merged yet .
manila-tempest-plugin needs to be pinned in Victoria and
Wallaby because the plugin requires newer tempest version
than is available there.
The patch also makes neutron version discovery with a not
top level URL, seems like something changed because
the discovery has been failing.
To follow tempest's change  regarding the inclusive jargon,
the patch renames arguments for tempest zuul jobs.
Also a tox version is bumped so that we can use the newer
python-tempestconf-tempest-devstack-* jobs were failing
due to missing virtualenv and tox.
Added 'ensure-tox' role in packstack and devstack
deployment playbook. To make sure that tox is installed
and it will not break the tempest tests run.
Signed-off-by: Amol Kahat <email@example.com>
Currently in packstack deployment, we are collecting logs
once the deployment finishes and then we run tempest tests and
collect tempest related logs.
If the tempest tests fails, we have no openstack services logs
with tempest api calls in service logs, it is very hard to find
out what is causing the failure.
Copying the openstack services logs just after tempest runs
finishes will more info about the failure.
It also disables the copy log operation once packstack
Signed-off-by: Chandan Kumar (raukadah) <firstname.lastname@example.org>
The job will be useful in cases we want to test if the
generated tempest.conf works with certain tempest plugins.
The job runs heat-tempest-plugin for now.
python-tempestconf sets _member_role by default, however,
the role is not created in devstack environment by default.
Therefore the patch adds logic which checks if the role is
present and if it's not, it tries to look for member role.
If the member role is not present as well, auth.tempest_roles
is not set at all.
Don't expose credentials to tempest.conf when
--create-test-accounts is used.
When generating tempest.conf with demo creds, use
--create-accounts-file argument so that the argument
is tested in the gates.
The argument is used only on Devstack.
Tempest concurrency of devstack demo job is reduced to 1
because the minimal accounts file is used.
We thought there were a bug in copy command due the fact it wasn't
copying the files to logs. Turns out it was the remote_src option that
This patch collect the tempest.conf, accounts.yaml and the
tempest.log files. In order to make it work here's what had to
* General refactor of the jobs
* Devstack jobs, inherited from devstack, and these files are on logs/
since it's the only place we can specify files to be according
zuul documentation. You could add a tempest directory in logs but
we would have to overwrite a lot of code just for it, since we
are inherit the tempest run playbook from tempest project.
* Packstack jobs are inherited from packstack, and they have a different
way to upload logs, and they don't run tempest, so we had to
implement our own upload logs and overwrite the packstack one.
Basically a copy and paste, plus the generation of tempest directory
in /tmp/logs and copying the files to that directory.
* Instead of use the copy module from ansible, we are using the
command module doing a sudo cp file because the copy module was
failing with file not found, even though the file was there.
A bug was opened against ansible at
* Removing local py35 job since we are inherit it from upstream already
When a tempest.conf is generated with admin credentials and
swift is enabled, object-storage.operator_role is set to admin.
This behavior is not wanted, when we generate tempest.conf
for tempest account-generator. In this case the operator_role
will be overriden in cli and set to Member (the same value
as tempest.conf with demo credentials contains)
python-tempestconf-tempest-packstack/devstack-demo zuul job
uses generate-tempestconf-file role to generate tempest.conf.
Since demo is a non-admin user with non-admin user we cannot use
--create option but it was used since it is a bug, so we need to
check for admin/demo user then enable the proper option.
Used Jinja templates for creating tempest configuration script
Create test-demo-user role which prepares resources for a demo
Create generate-accounts-file role, which generates accounts.yaml
file for Tempest needed for running tests as user who doesn't
have persmissions to create resources.
Co-Authored-By: Martin Kopec <email@example.com>
* Decouple few tasks from generate-tempestconf-file-cloud role
to a new role named edit-clouds-yaml-file in order to be
able to use this logic multiple times.
* Add a new role, which creates clouds.yaml file - usefull
when a module requires an authentication and an environment
doesn't have one (f.e. packstack)
Needed after https://review.openstack.org/517644 which changed the
definition of the base jobs (especially where the type of the base
image is defined).
Reduce the concurrency of tempest run to (hopefully) prevent some
errors related to networking.
* Create a structure for Zuul v3 jobs.
* Add tempest jobs running on devstack and packstack environment with admin
and demo credentials.