51 Commits

Author SHA1 Message Date
Jenkins
6954af5734 Merge "Add 'propose' job for openstack-ansible-tests" 2017-05-23 10:07:02 +00:00
Major Hayden
20abda3c03
Add Debian nv check for osa-security
This patch adds a non-voting CI check for Debian jessie on the
openstack-ansible-security role.

Change-Id: Ia33012de9aab5f9113bce5453c3127a9c77594ba
2017-05-19 14:31:54 -05:00
Markos Chandras
e6ddb7965c Add 'propose' job for openstack-ansible-tests
The openstack/openstack-ansible-tests repository holds various test
files which are duplicated in every openstack-ansible project. Files
are often end up out of sync so we add a new 'propose' job in order
to try and keep all these files in sync.

Change-Id: Ic46cf859c8a6e0eae2576cb11e2798f49ce87b23
2017-05-19 09:22:33 +01:00
Andy McCrae
240c1e9696 Fix conditional for EPEL Repo enable/disable for OSA
Because the job runs against Ubuntu and CentOS7 hosts, we need to ensure
that the task won't fail on an Ubuntu host. This patch changes to a
conditional so the exit code is 0 rather than 1 when running on Ubuntu.

Change-Id: I4ab7194db9ded8190dca209f284e5195e526b695
2017-05-03 10:34:19 +01:00
David Moreau-Simard
44ca9dd5f3 Disable EPEL after running Bindep for OSA jobs
EPEL is enabled on a per-transaction basis only when required as
part of the playbooks (ex: [1][2]).

By enabling EPEL for the purpose of installing packages out of
bindep and not disabling it afterwards means EPEL is effectively
"bleeding" into every yum transactions, not just the ones where it
is explicitely enabled.

This patch prevents such bleeding by disabling EPEL right after
bindep has finished installed packages.

[1]: 09406de86b/vars/redhat-7.yml (L67)
[2]: 1db27456b9/tasks/pre_install_yum.yml (L53)

Change-Id: Iab82082d24f4edddeedd28964871dafc0379cd44
2017-05-02 12:58:35 -04:00
Andreas Jaeger
0af15e8d9d Remove useless quotes for nodes
A few projects used excess '' for node declarations, remove them.

We had 17 'ubuntu-trusty' and 285 ubuntu-trusty,
and 25 'ubuntu-xenial' and 744 ubuntu-xenial.

This changes all node names for consistency, thus making search easier.

Change-Id: I0cf565d1e31ea246f3b9d93bbd8de9980df4c684
2017-04-28 19:43:00 +02:00
Jimmy McCrory
34d4df7691 Enable EPEL before installing distro packages
OpenStack-Ansible's roles contain a bindep requirement from EPEL.

Change-Id: Ie27db0423d0679f7f32a2295837816f79721af2f
2017-04-14 16:35:57 +00:00
Andreas Jaeger
acf7572d10 s/gerrit-git-prep/zuul-git-prep/g
We do not need gerrit-git-prep anymore, zuul-git-prep works on all our
slaves and has the advantage of using zuul-cloner so that the local
cache is used and Depends-On works.

Remove gerrit-git-prep and use zuul-git-prep instead everywhere.

Change-Id: I2f106af58f78fceaf3c497fe43e6f5a002695645
2017-04-03 19:36:51 +02:00
Paul Belanger
6db5cd3c4f Replace fedora-24 jobs with fedora-25
The majority of these fedora jobs are non-voting. There is no issue
moving the ansible roles and windmill to fedora-25, as I can clean up
issues as they are found.

Change-Id: Ifc2a000858808438b394a1959d7e89700fb41f00
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
2017-01-14 11:49:30 -05:00
Paul Belanger
01dfd5c9a3 Add fedora-24 voting jobs
We've confirmed the following ansible roles work correctly on Fedora
24, so we can make them voting.

Change-Id: Ifbd3946a065c2d0c3ebbdbfea6a38e6c0b2c2f06
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
2016-12-08 21:03:35 -05:00
Andreas Jaeger
4a61bc67f5 Change job-suffix to suffix
We have now some rather long job-template names, shorten them with
replacing job-suffix with suffix.

Before this change we had 1500 usages of job-suffix and 700 of just
suffix. This change therefore unifies to one setting.

Note that this does not change any job names at all, they are unchanged,
it changes and shortens only the names of job-templates.

Change-Id: I514df039a848d9f6619bca3adc05dfb84a761fc9
2016-12-08 22:05:01 +01:00
Paul Belanger
f28f0a2b1c Clean up ansible-(dsvm-)role-jobs
This is a noop change to reduce some duplicate code.

Change-Id: Ib116d64e2035ef65d9fe6feb00b23dcaf67431ec
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
2016-11-24 15:22:06 -05:00
Jesse Pretorius
3eeb2a4819 Add upper constraints prep to ansible-role-jobs
Currently the UPPER_CONSTRAINTS_FILE environment variable
is set, but there is no file. This patch ensures that the
file is on the test node too.

Change-Id: I34af5505e9f3f1744134428f03e96d3446e5c2a0
2016-10-18 17:02:35 +01:00
Jenkins
3c93d892c9 Merge "Allow Ansible role checks to collect logs" 2016-08-02 13:23:53 +00:00
Paul Belanger
83e43018f4
Switch to gate-{name}-linters-{node}
This is part of our effort to migrate from ubuntu-trusty to
ubuntu-xenial.

Change-Id: Ifc69d2b5bb487f4b41bc9a04daec7f265e7463ab
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
2016-08-01 12:04:43 -04:00
Jesse Pretorius
b25c256bf3 Allow Ansible role checks to collect logs
In order to facilitate better debugging abilities in check results,
this patch adds the log publisher.

Change-Id: I936a221644d0ac28a64855739934f8359b33ed52
2016-07-29 17:41:40 +00:00
Clark Boylan
02fc6ae7ed Convert python-jobs to run on xenial
This moves members of the python-jobs group over to using xenial by
default on >= Newton. We continue to run on trusty on older branches.

Change-Id: Idba3883443e53567435c36dcc833b5f3988d8670
2016-07-25 19:32:46 -04:00
Ricardo Carrillo Cruz
38c54ee096 Bump cloud launcher build timeout
Change-Id: I975854a58954a72e51461a5bebd5fa15cc5473d2
2016-07-19 10:49:21 +02:00
Ricardo Carrillo Cruz
a34873be50 Add ZUUL_PROJECT to PROJECTS to clone
This adds the project being tested to PROJECTS var,
so it gets cloned and placed on /opt/stack/new.

Change-Id: I86fb99d913cc7e3fcdf41f70e12b5843a304c944
2016-07-18 18:57:08 +02:00
Ricardo Carrillo Cruz
a8fe0209c3 Use {name} instead of ZUUL_PROJECT in ansible role post_test_hook
Otherwise it shows 'openstack/$PROJECT', making tests to fail as
the path does not exist.
e.g.

https://review.openstack.org/#/c/342099/ , patchset 18.

{name} just contains the project name being tested, so just use it.

Change-Id: Ib41e31eba87c863723ede7b89ca81a4c871ad5e5
2016-07-18 15:04:39 +02:00
Jenkins
b5334b1186 Merge "Fix ansible dsvm functional job" 2016-07-18 10:09:25 +00:00
Ricardo Carrillo Cruz
ca82114230 Fix ansible dsvm functional job
The job is missing the post_test_hook function export.
This makes the job to bail early, as there's no post test hook
and the cleanup routine is called immediately.

This causes an issue on DevStack, as the cleanup calls the
stackviz installation code which makes a pip install -U, upgrading
underlying libs needed by DevStack like pytz and oslo.context, which
breaks subsequent tests as the latest versions of these libraries
do not work properly with Nova code.
e.g. https://review.openstack.org/#/c/342099/

The tox kickoff script should be in project repo, rather than
relying on the tox macro. The path expected is
tests/hooks/post_test_hook.sh.

Depends-On: Icfe3d5a4f4226d36885664bb95a370ada13c630f
Change-Id: Ie56f41884253d1ab97a205fdb9fbde88963c5fe7
2016-07-18 10:51:31 +02:00
Jesse Pretorius
441816ac31 Implement optional scenario setting for Ansible jobs
In order to allow the same ansible role jobs to be used for multiple
scenarios, this patch implements an optional job setting which gets
used to modify the tox environment used.

The intent is that the tox configuration used in the target repository
can be specified in the job in order to implement alternative
scenarios.

Change-Id: I2e9c49b6d8181feb24c963d88b2f08e46e8a18c4
2016-07-12 17:56:56 +01:00
Ricardo Carrillo Cruz
794b01e578 Remove bindep builder from cloud launcher dsvm job
The bindep macro installs mysql, which sets the password for root
user.
However, devstack *also* installs is with preseed data with
the default password 'secretpassword', which makes the job
to break in Ubuntu.

Change-Id: Ia81a065a7f02eafda5f0d7b107c88484ddc20d75
2016-06-01 23:47:02 +02:00
Ricardo Carrillo Cruz
fe8468263e Run dsvm jobs on the Ansible cloud launcher role
Change-Id: I40838acb972840002dbbf761a3bdd9b90b21675f
2016-05-31 19:57:40 +02:00
Ricardo Carrillo Cruz
dcf2f3c8a3 Add ansible role job with DevStack
The Ansible cloud launcher needs to run with DevStack running
to test that it actually can launch clouds and do anything useful.
Add this job to the ansible role jobs family prior to enabling it
on the cloud launcher project.

Change-Id: I0dc8936929ce7654b16ec1e8e0c7025fcf94b8da
2016-05-31 14:22:45 +02:00
Jesse Pretorius
53f44fd8d2 Add release announcement jobs for major OSA repos
In order to facilitate the execution of the release announcements for
OpenStack-Ansible repositories (which don't publish tarballs), this
patch sets up the announce-release post job for a selective set of
repositories.

Also included is a small fix to the experimental jobs for the os_aodh
repository.

Change-Id: Ia56d236d3a952f9370a0c23622ec08d62f0e287b
2016-05-27 16:05:56 +01:00
Jenkins
13a3129ba7 Merge "Implement higher job timeout for Ansible role jobs" 2016-04-19 17:10:07 +00:00
Jesse Pretorius
e1e8c6995c Implement higher job timeout for Ansible role jobs
Some of the OpenStack-Ansible (OSA) roles construct enough of
an OpenStack environment and execute enough functional testing
for the job to easily reach the 30 min default time limit.

This patch implements a higher limit to cater for these jobs
to ensure that OSA can properly execute functional testing in
the roles without having to compromise o quality to accommodate
a short job timeout.

Change-Id: I780b735de54c23cfea14ddafa8ad39aff16e92eb
2016-04-15 19:09:40 +01:00
Jesse Pretorius
a25c2c9f39 Add experimental ubuntu-xenial jobs for OpenStack-Ansible roles
This patch adds experimental Ubuntu Xenial jobs to all the
OpenStack-Ansible roles. The jobs are '-nv' jobs so that if
the 'ansible-role-functional-jobs-xenial' is switched from
the experimental queue to the check/gate queue then these jobs
are not affected. It keeps things more flexible.

Change-Id: I23a5dafed406436ecf4299ae269c6eabe2fa07a5
2016-04-15 18:52:01 +01:00
Paul Belanger
c40bf439bc
Add experimental ubuntu-xenail jobs for ansible roles
We'll only enable it for ansible-role-zuul to start.

Change-Id: I477d5080967f0ee83bfbe71b981a80c9d402b1bf
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
2016-04-15 13:33:25 -04:00
Paul Belanger
7a5c580576 Switch ansible-role-functional-jobs-centos7 to centos-7
Confirmed by the non-voting jobs, we can now move the voting jobs off
devstack-centos7.

Change-Id: I9b09a45f36fc34323ffe818a471491e7f8d8635c
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
2016-03-31 13:30:30 -04:00
Paul Belanger
822884cf53 Move ansible-func non-voting to centos-7 dib
We are in the process of retiring the devstack-centos7 image. Moving
the non-voting jobs will allow us to smoke test the centos-7 dib
before moving on to voting jobs.

Change-Id: Icbe24ea402be06254b710e504cd2a5f5743876b0
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
2016-03-30 11:13:23 -04:00
Clark Boylan
05f769218a Ansible role jobs copy console to disk not swift
We are having problems retrieving the entire ansible role job console
logs from swift via our logs.openstack.org wsgi service. While we debug
this problem switch these jobs to copy the console log to the disk based
server.

Change-Id: Ia9e89d79016e3fe782505343174b4e9f4a4e57eb
2016-03-11 09:40:32 -08:00
Andreas Jaeger
848a351154 Change jobs to use ubuntu-trusty
Convert ansible-lint and run-tests job to use ubuntu-trusty instead of
bare-trusty.

Change-Id: I4775e7674348e2ca6e639db3758c7bc03da159a1
2016-03-10 07:34:58 +01:00
Paul Belanger
53e3b08a8a Switch to ansible-func-ubuntu-trusty for ansible jobs
Here we are switching to ubuntu-trusty as our base image, this will
allow us to retire the bare-trusty node.

Change-Id: I80648a9176d6adb759dffb7545ec0cd100d2d60b
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
2016-03-04 09:19:31 -05:00
Paul Belanger
6787ea6ab7 Reduce template name for ansible bindep jobs
Currently openstack ansible project names are pretty long and we need
to do our best to keep below the 128 char that jenkins creates for
directory names.  Otherwise, tox explosed.

Change-Id: I4e5b292fcaaffbdfe08331d80c51d40f10fa0e79
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
2016-03-03 09:47:14 -05:00
Paul Belanger
d221615927 Create ansible functional using bindep
This will be an experimental job to validate bindep works as expected
with ansible-role-jobs.

Change-Id: Ibe787704470e3fb7c2c989055bd986c2df263e56
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
2016-03-01 14:18:05 -05:00
Jesse Pretorius
cee603b0ee Switch non-infra Ansible roles to using 'linters' tox target
This patch implements a change from individual pep8/ansible-lint/etc
lint jobs to using a unified 'linters' tox target.

This reduces nodepool usage across all OpenStack-Ansible and some
other Ansible role repositories.

Change-Id: If9979dc0cad8418bedf7a342754ab68394e0a214
2016-02-08 16:28:43 +00:00
yolanda.robla
fece45757e Revert "Temporarily pin to ansible==1.9.4"
ansible-lint was fixed and should work with ansible 2.0

This reverts commit e15930bcc65d07195197d0b11a1d0481ebff7181.

Change-Id: I2f7caa135c44aad7514bd1c325ddab6136519f9a
2016-01-14 15:40:13 +00:00
Yolanda Robla
e15930bcc6 Temporarily pin to ansible==1.9.4
New ansible 2.0 doesn't support ansible-lint

This is shown on https://github.com/willthames/ansible-lint/issues/75,
and is breaking our ansible-lint tests.

Change-Id: I3eef420084104eead1fb24eb537723214296fa5d
2016-01-13 13:34:41 +01:00
Paul Belanger
a5ce6b3397 Switch to testenv:functional for dsvm-ansible-functional
The main reason for this, when we added ansible into the gate name we
passed the 125 char interrupter limit that tox supports.  Which broke
gate-ansible-role-jenkins-job-builder-dsvm-ansible-functional-centos7.

This actually brings tox.ini inline with other openstack projects.

[1] http://logs.openstack.org/98/259498/1/check/gate-ansible-role-jenkins-job-builder-dsvm-ansible-functional-centos7/46e396f/console.html

Change-Id: I376e51824c46f9b5eb4a4cff01aaa176632087dd
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
2015-12-18 15:21:26 -05:00
Andreas Jaeger
1d786e2471 Rename and templatize ansible functional jobs
Rename {pipeline}-{name}-dsvm-functional-{ostype}{job-suffix} to
{pipeline}-{name}-dsvm-ansible-functional-{ostype}{job-suffix} as
jenkins job.
Add print-template-name to it to job-template.

In zuul setup:
- Rename existing template ansible-role-functional-jobs to
  ansible-role-functional-jobs-centos7.
- Introduce new template ansible-role-functional-jobs-trusty.
- Use the new template when appropriate.
- Rename jobs for renamed functional jobs.

Change-Id: I34b6bbe1230fa08c3e17d904792d58e2d5c69644
2015-12-14 19:51:09 +01:00
Paul Belanger
037d4395ca Enable SSH access for ansible-role-jobs
Here we are generating SSH keys for the jenkins user. This give the
ability for Ansible to SSH to localhost to provision functional tests.

We do not want to use root hence the reason for not using the existing
macro.

Change-Id: I2c0283c7547cfd1c98b8cc6bbafbe4a75f2b98bb
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
2015-12-14 12:42:48 -05:00
Jesse Pretorius
bebd76ebdf Switch Ansible role jobs to use 'dsvm-functional-trusty'
This patch switches the Ansible role checks to use the
'dsvm-functional-trusty' job so that it has sudo access.

Change-Id: Ic8d6afd2d72ac8d6bd4290a39a57ec6d8706207b
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
2015-11-23 13:31:01 -05:00
Paul Belanger
979cfb80c9 Create ansible-role-jobs for JJB and zuul
In an effort to reduce duplicate code, we've created an
ansible-role-jobs templaste.  Any new ansible module should use this
template.

We still have a few projects not using this, but will be converted
once their local tox.ini files have been updated.

Change-Id: I20012637ee0fa04ff910c13630b3b3aa5ce230eb
Depends-On: I1815c42f74df237e810332b55c0e890d80ebada9
Depends-On: I83ae3bb426c1a951216e2ca0509d1b5ab5020ecc
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
2015-11-21 13:23:08 -05:00
Paul Belanger
5fafab2e0f Add zuul-swift-upload-console-log for ansible-functional job
Change-Id: I9fd26cba3634f68188966d2729468962f6dace0a
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
2015-11-17 12:33:19 -05:00
Paul Belanger
63b64d71f0 Switch ansible-functional job zuul-git-prep
Since we only have a single module right now, we don't need to full
ability to zuul-clone.  We are also running into a 127 char shebang
limit with execve so this will reduce our directory name.

Change-Id: I024f414ddae85621a861b21d284ea1e417c4438d
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
2015-11-16 20:48:23 -05:00
Paul Belanger
cf6887a19f Fix builders typo for ansible-functional
Change-Id: I45794bd8e84380a0930ee9401e0032ce37eadd7f
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
2015-11-16 17:19:05 -05:00
Paul Belanger
f67703d472 Add gate-ansible-dsvm-functional-centos7-nv job
Change-Id: I4cbac8aadff68e6b6469c32dc9c3978060740b42
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
2015-11-13 19:27:49 -05:00