The following items were missing from an automated zuul install:
* A pre-populated known hosts file
* The git user/email for creating commits (.gitconfig existed
on zuul.o.o, but switch to using zuul's config file instead).
Also, make sure that the mergers specify the zuul server as the
gearman server address rather than localhost.
Change-Id: I47a473f60c4b5b2daaa910aa61cdf6e0c6fe1528
Remove obsolete config options from zuul module.
The server and merger classes are constructed so that they
may coexist on a single server. Also, the init section is
constructed so that it will install everything needed for
both services but without activating them (leaving maximum
flexibility for the operator).
Change-Id: I7b86fbbe4611c5edfb463a0a6944e0717f664188
Zuul was packing git refs weekly, do this daily instead to handle the
number of refs created by gate resets in large gate queues.
Change-Id: I8fc8c78436ebf79b457d392f1ce8de31b15c762c
The Zuul service opens a lot of TCP connections and files resulting in
many open file descriptors. The default limit of 2048 is bumped into
regularly. Bump the limit to 8192 when starting the Zuul service to give
it breathing room to grow into.
Change-Id: I9a3aee664c1c6c6139b012fc3dc0631725f59741
Ad a cron job to pack refs in zuul repos. Zuul creates _a lot_
of refs, packing them should make client git repo access more
efficient. Up to a point at least -- ultimately we may still
need to delete them later.
Change-Id: Iaf5180069b38833d6e25f6880e4868d5e2319b75
The pip vs. easy_install interactions continually get the systems
into a weird state. pip install $path_to_repo, on the other hand,
works like a charm.
Left out two graphite installs because they are doing path manipulation
and I want to do further testing before touching that.
Change-Id: I373b29aca03f1ebd20e533ebaaf5de9ef2db017e
We have a cgit server now, which means we should replace
all references to github with references to git.openstack.org.
Change-Id: I68ad1ce514fb4326c7d9940b5a84999af5b58562
Will take effect when Zuul is running this change:
I74702fd7d37358e6f4caa7e7ac0a3ede73184077
This change also adds that feature to the Zuul config and enables
it for OpenStack. It also adds the ability to specify HTML in a
commentlink (and uses it).
Change-Id: Idb4ad8e6079165d681271987a92cab5d8b7c81be
Previously, installing zuul resulted in the erros:
/usr/bin/python: No module named pip
This commit ensures that python-pip is always installed
before zuul is installed so that it can install
correctly.
Change-Id: I6d73a67e1fbb9eb077f39f99c45ceb4a00bc652b
Previously, the file resource did not have an
owner specfied, meaning that it defaulted to root:root.
This resulted in the following failure when starting the
zuul service:
IOError: [Errno 13] Permission denied: '/var/lib/zuul/test'
This commit ensures propoer ownership so that zuul can start.
Change-Id: I3ee9ae49097695632114ed6692c78ebf22a08823
Now that Zuul and Jenkins use Gearman we don't need to push Jenkins auth
details down into the zuul manifests. Removes these parameters and vars.
Change-Id: I744977f002eb9fb60c3392f0281ab033ffe2bb12
(This is only used by zuul-dev currently.)
Remove co-hosted gearmand server (will require manual cleanup).
Also, listen for feature/gearman events in openstack-infra.
Change-Id: I2dd58e62ff79277f1ef5c79da54bcc7511f2ccee
Reviewed-on: https://review.openstack.org/30175
Reviewed-by: Jeremy Stanley <fungi@yuggoth.org>
Reviewed-by: Clark Boylan <clark.boylan@gmail.com>
Reviewed-by: Monty Taylor <mordred@inaugust.com>
Approved: James E. Blair <corvus@inaugust.com>
Tested-by: Jenkins
On a zuul server, install the default status page as shipped by
Zuul (and its dependencies).
Remove openstack-specific redirects (hopefully it's been long enough
now).
Change-Id: Idfa2d9a4aa261182d166a36193fe74e1d922bcd9
Reviewed-on: https://review.openstack.org/29262
Reviewed-by: Clark Boylan <clark.boylan@gmail.com>
Reviewed-by: Paul Belanger <paul.belanger@polybeacon.com>
Reviewed-by: Jeremy Stanley <fungi@yuggoth.org>
Approved: James E. Blair <corvus@inaugust.com>
Tested-by: Jenkins
And connect it to the firehose.
Change-Id: Id860ff329e33a588d669608e5402bdb3765001dd
Reviewed-on: https://review.openstack.org/28742
Reviewed-by: Khai Do <zaro0508@gmail.com>
Reviewed-by: Clark Boylan <clark.boylan@gmail.com>
Reviewed-by: Monty Taylor <mordred@inaugust.com>
Approved: James E. Blair <corvus@inaugust.com>
Tested-by: Jenkins
Change-Id: I8374f389dc0a470a9e12b2987b3bd45dd07a9b74
Reviewed-on: https://review.openstack.org/27513
Reviewed-by: Jeremy Stanley <fungi@yuggoth.org>
Reviewed-by: Khai Do <zaro0508@gmail.com>
Reviewed-by: Paul Belanger <paul.belanger@polybeacon.com>
Reviewed-by: Clark Boylan <clark.boylan@gmail.com>
Reviewed-by: Antoine Musso <hashar@free.fr>
Reviewed-by: Monty Taylor <mordred@inaugust.com>
Approved: Monty Taylor <mordred@inaugust.com>
Tested-by: Jenkins
And update the status page to use common.js.
Redirect old zuul status urls to status.o.o.
Change-Id: I98e86eb78b70d5cbe53410919642f302e9709d19
Reviewed-on: https://review.openstack.org/25664
Reviewed-by: Clark Boylan <clark.boylan@gmail.com>
Approved: James E. Blair <corvus@inaugust.com>
Tested-by: Jenkins
Let setup.py install handle it instead.
Change-Id: I7f143dcc4c19af267ef820973184c45e2020a3de
Reviewed-on: https://review.openstack.org/25551
Reviewed-by: Monty Taylor <mordred@inaugust.com>
Approved: Jeremy Stanley <fungi@yuggoth.org>
Reviewed-by: Jeremy Stanley <fungi@yuggoth.org>
Tested-by: Jenkins
And allow zuul to send to statsd.
Change-Id: Ie9f78268a673523c4ea4025bdbbe40d8d3819398
Reviewed-on: https://review.openstack.org/18658
Reviewed-by: Jeremy Stanley <fungi@yuggoth.org>
Approved: James E. Blair <corvus@inaugust.com>
Tested-by: Jenkins
Since .html extensions are uncool.
Change-Id: I66ed8b6c43e7917d793ec372fac755e02b207c63
Reviewed-on: https://review.openstack.org/18552
Reviewed-by: Jeremy Stanley <fungi@yuggoth.org>
Approved: Monty Taylor <mordred@inaugust.com>
Reviewed-by: Monty Taylor <mordred@inaugust.com>
Tested-by: Jenkins
Requires Zuul support for JSON status endpoints.
Change-Id: I899a54af6d380aa2836a85757492e7590be90e8b
Reviewed-on: https://review.openstack.org/18580
Reviewed-by: Jeremy Stanley <fungi@yuggoth.org>
Approved: James E. Blair <corvus@inaugust.com>
Tested-by: Jenkins
Change-Id: Icb504f56499651388c6dd4ba720bd55a93602322
Reviewed-on: https://review.openstack.org/18449
Reviewed-by: Jeremy Stanley <fungi@yuggoth.org>
Reviewed-by: Clark Boylan <clark.boylan@gmail.com>
Approved: James E. Blair <corvus@inaugust.com>
Tested-by: Jenkins
* New puppet class to install the script, init script, and set up
user and directories.
* Add class to zuul server.
* Install openstack themed scoreboard template.
* Add URL to zuul.openstack.org/rechecks.html.
Change-Id: I9046cd21923aae40107f0d558080c44f65481fd7
Reviewed-on: https://review.openstack.org/18442
Reviewed-by: Clark Boylan <clark.boylan@gmail.com>
Approved: Jeremy Stanley <fungi@yuggoth.org>
Reviewed-by: Jeremy Stanley <fungi@yuggoth.org>
Tested-by: Jenkins
Update the status URL that is left in gerrit.
Don't push zuul refs to gerrit.
Don't proxy git requests to zuul in the apache config.
Change-Id: I578383d8bcec63b8581dc1a8b50405ad7e7070a5
Reviewed-on: https://review.openstack.org/18195
Approved: James E. Blair <corvus@inaugust.com>
Reviewed-by: James E. Blair <corvus@inaugust.com>
Tested-by: James E. Blair <corvus@inaugust.com>
Change-Id: I409bd50ae374e0288531f07cfeea34856c5f8067
Reviewed-on: https://review.openstack.org/17319
Approved: James E. Blair <corvus@inaugust.com>
Reviewed-by: James E. Blair <corvus@inaugust.com>
Tested-by: James E. Blair <corvus@inaugust.com>
Remove zuul from jenkins server.
Remove transitional zuul config.
Add an extra argument to gerrit-git-prep for the git site name, so that it
doesn't have to be the same as the review site.
Serve zuul git repos via apache.
Change-Id: I342032bcedf317c0f48ff89b773546eb2ccd08f8
Reviewed-on: https://review.openstack.org/17949
Tested-by: Jenkins
Reviewed-by: Jeremy Stanley <fungi@yuggoth.org>
Approved: James E. Blair <corvus@inaugust.com>
Reviewed-by: James E. Blair <corvus@inaugust.com>
Tested-by: James E. Blair <corvus@inaugust.com>
Because puppet sucks at installing packages, wrap the installation of
everything that jeepyb needs in both jeepyb and in other places with
if blocks. *facepalm*
Change-Id: I69c73dabc3ea5d68bd057141b1ad758cdd68eafc
Reviewed-on: https://review.openstack.org/17130
Reviewed-by: James E. Blair <corvus@inaugust.com>
Reviewed-by: Clark Boylan <clark.boylan@gmail.com>
Approved: Monty Taylor <mordred@inaugust.com>
Tested-by: Jenkins
Change-Id: Iaa2c9510bd9707f28715742ad95a64d232e0a8e1
Reviewed-on: https://review.openstack.org/16925
Reviewed-by: Clark Boylan <clark.boylan@gmail.com>
Reviewed-by: Paul Belanger <paul.belanger@polybeacon.com>
Approved: James E. Blair <corvus@inaugust.com>
Reviewed-by: James E. Blair <corvus@inaugust.com>
Tested-by: Jenkins
Mostly documentation and parameterised class parameter complaints.
Change-Id: I5b3ffa4ad3f707f385165c2d86c891c6bd4c1ae0
Reviewed-on: https://review.openstack.org/16901
Reviewed-by: James E. Blair <corvus@inaugust.com>
Approved: Clark Boylan <clark.boylan@gmail.com>
Reviewed-by: Clark Boylan <clark.boylan@gmail.com>
Tested-by: Jenkins
push_change_refs controls whether zuul should push its reference back in
Gerrit. This might not be always wanted, for example on very busy
Gerrit installation that never use the refs/zuul/* hierarchy for any
purpose.
Pushing back to Gerrit is now disabled by default and is explicitly
enabled on OpenStack infrastructure (openstack_project::zuul).
Change-Id: I24111ba4b20ab3d5198fdf7deaf902485260d8a5
Reviewed-on: https://review.openstack.org/16475
Reviewed-by: Clark Boylan <clark.boylan@gmail.com>
Reviewed-by: Jeremy Stanley <fungi@yuggoth.org>
Approved: Monty Taylor <mordred@inaugust.com>
Reviewed-by: Monty Taylor <mordred@inaugust.com>
Tested-by: Jenkins
Change-Id: Ic2b8f638d4c328eeb92a86c6ce1b92a55b13d6bb
Reviewed-on: https://review.openstack.org/14981
Reviewed-by: Clark Boylan <clark.boylan@gmail.com>
Reviewed-by: Paul Belanger <paul.belanger@polybeacon.com>
Reviewed-by: James E. Blair <corvus@inaugust.com>
Approved: James E. Blair <corvus@inaugust.com>
Tested-by: Jenkins
Change-Id: I4ddd69916db4d9df036d3d674fb58847981d2758
Reviewed-on: https://review.openstack.org/13810
Reviewed-by: Clark Boylan <clark.boylan@gmail.com>
Reviewed-by: Antoine Musso <hashar@free.fr>
Approved: James E. Blair <corvus@inaugust.com>
Reviewed-by: James E. Blair <corvus@inaugust.com>
Tested-by: Jenkins
Previously you could not use the Jenkins module to go from fresh host to
running jenkins. There were two problems.
1. jenkins::master does not explicitly create a jenkins user which is
required by Zuul. Instead the jenkins deb package creates the users.
Zuul File resources that need the jenkins user should require the
jenkins package.
2. jenkins::master did not install Bazaar but attempted to run a service
that depended on bzr.
Correct these two errors (require jenkins package and remove bzr
service).
Change-Id: Ib2d6f58fbcd456781f10cf2ceefc11503d6f92f2
Reviewed-on: https://review.openstack.org/13926
Reviewed-by: Paul Belanger <paul.belanger@polybeacon.com>
Reviewed-by: James E. Blair <corvus@inaugust.com>
Approved: Clark Boylan <clark.boylan@gmail.com>
Reviewed-by: Clark Boylan <clark.boylan@gmail.com>
Tested-by: Jenkins
Zuul can now provide links to the status page if a url for that page is
included in the zuul configuration. Add the status_url option to the
zuul config erb and default it to https://$fqdn/zuul/status.
Change-Id: I160a4e1cd71a13981cb171c71a923cc1af753a80
Reviewed-on: https://review.openstack.org/13859
Reviewed-by: James E. Blair <corvus@inaugust.com>
Reviewed-by: Monty Taylor <mordred@inaugust.com>
Approved: James E. Blair <corvus@inaugust.com>
Tested-by: Jenkins
A lot of modules require python-yaml. Be conservative requiring this
package to avoid conflicts when two or more of these modules end up
being used on the same host.
Change-Id: I35bf4f1070e6f248734c593e9277b737166904c1
Reviewed-on: https://review.openstack.org/13688
Reviewed-by: James E. Blair <corvus@inaugust.com>
Reviewed-by: Paul Belanger <paul.belanger@polybeacon.com>
Approved: Monty Taylor <mordred@inaugust.com>
Reviewed-by: Monty Taylor <mordred@inaugust.com>
Tested-by: Jenkins
This add some Ubuntu packages as Zuul dependencies, although they are
listed in tools/pip-requires already. New dependencies are:
- python-lockfile
- python-paramiko
- python-yaml
I am not sure how well the Ubuntu versions will work out versus the one
from pip.
Change-Id: Ie56da494db7eb4925834824028ed6471b91be77b
Reviewed-on: https://review.openstack.org/13575
Reviewed-by: Monty Taylor <mordred@inaugust.com>
Reviewed-by: Paul Belanger <paul.belanger@polybeacon.com>
Reviewed-by: Clark Boylan <clark.boylan@gmail.com>
Approved: James E. Blair <corvus@inaugust.com>
Reviewed-by: James E. Blair <corvus@inaugust.com>
Tested-by: Jenkins
$git_source_repo is a new optional parameter to the zuul class, let you
specify from which repository you want to install zuul. The default is
the maintainer version on GitHub.
The reason for this change is that some third party always hosts their
software on their own infrastructure. That is the case of the Wikimedia
Foundation which is reusing this module.
Change-Id: I5ac8852b08d158ff3531f6795855df20a204789e
Reviewed-on: https://review.openstack.org/13576
Reviewed-by: Clark Boylan <clark.boylan@gmail.com>
Approved: Monty Taylor <mordred@inaugust.com>
Reviewed-by: Monty Taylor <mordred@inaugust.com>
Tested-by: Jenkins
Change-Id: Ib1d05a42e98613e746cbd7865cd97ce25f6a26c0
Reviewed-on: https://review.openstack.org/11940
Approved: James E. Blair <corvus@inaugust.com>
Reviewed-by: James E. Blair <corvus@inaugust.com>
Tested-by: James E. Blair <corvus@inaugust.com>
Change-Id: I59456356579d8e83b3f7d552ac795c4de55c0817
Reviewed-on: https://review.openstack.org/11590
Reviewed-by: Clark Boylan <clark.boylan@gmail.com>
Approved: James E. Blair <corvus@inaugust.com>
Tested-by: Jenkins
Also, set up the git directory.
Change-Id: Ia753c00df0665b3e8dec18083f113a900b168216
Reviewed-on: https://review.openstack.org/11446
Reviewed-by: Clark Boylan <clark.boylan@gmail.com>
Approved: James E. Blair <corvus@inaugust.com>
Tested-by: Jenkins
Change-Id: I83cf1303bb07e59b0c3305a2540f048638940372
Reviewed-on: https://review.openstack.org/10979
Reviewed-by: James E. Blair <corvus@inaugust.com>
Reviewed-by: Clark Boylan <clark.boylan@gmail.com>
Approved: Monty Taylor <mordred@inaugust.com>
Tested-by: Jenkins
Change-Id: Ia0f3acd50aab07cc83d13cd12c8f7fc67f1c697d
Reviewed-on: https://review.openstack.org/10832
Reviewed-by: Clark Boylan <clark.boylan@gmail.com>
Reviewed-by: James E. Blair <corvus@inaugust.com>
Approved: Monty Taylor <mordred@inaugust.com>
Tested-by: Jenkins
Add a templated zuul.conf with apikey filled in by hiera.
Made an openstack_project::zuul class to encapsulate installation
and config of zuul with our config files.
Change-Id: Idc09819b27672879b74b90bdbf699b07aa416a2a
Reviewed-on: https://review.openstack.org/10460
Reviewed-by: Clark Boylan <clark.boylan@gmail.com>
Reviewed-by: James E. Blair <corvus@inaugust.com>
Approved: Monty Taylor <mordred@inaugust.com>
Tested-by: Jenkins
Zuul config files were broken out into a new module which introduced
cross module subscription dependencies. To make this work the module
doing the notify/subscribe must include the module the resource that
the subscription/notify is on. To fix this have config files notify
the zuul_reload exec.
Change-Id: I2d9e2236bc378d9dd92f811830dee6540b4cf4e2