410 Commits

Author SHA1 Message Date
Khai Do
9aef0e90d8 new maven plugin jobs to build and deploy maven plugins to maven nexus
This patch adds jobs to build maven plugins and deploy them
to the maven nexus repo at https://oss.sonatype.org

Closes-Bug: #1082812

Change-Id: I283d475ab18819391f282234b063522abbf09eda
2013-12-02 17:08:49 +00:00
Monty Taylor
d1c3803dcb Remove old pypi host cruft
We no longer use this, so keeping it in puppet is confusing.

Change-Id: I8a5d2a0067063ba762d553f397079deef43fc43f
2013-11-12 11:34:08 -05:00
Ryan Lane
2f4c686edc Rename openstack_project::elasticsearch
To avoid namespace issues, rename openstack_project::elasticsearch
to openstack_project::elasticsearch_node.

Change-Id: Icd215cd0c13f06d279a477d0885d33665ce125ae
2013-10-18 16:22:13 -07:00
Jenkins
98aff895ee Merge "Update etherpad and etherpad puppet manifests." 2013-10-13 16:29:27 +00:00
Clark Boylan
c1ffb9f145 Update etherpad and etherpad puppet manifests.
* manifests/site.pp: Pass new mysql DB variables to
openstack::etherpad*.

* modules/etherpad_lite/manifests/apache.pp: Fix broken /etc/ssl/certs
permissions (0700 -> 0755).

* modules/etherpad_lite/manifests/init.pp: Update default nodejs and
etherpad versions. Remove ep_headings plugin install. New plugin define
should be used for this instead. Stop making the etherpad-lite ref to
checkout optional (defaults to develop). Note these changes are probably
not going to be backward compat.

* modules/etherpad_lite/manifests/plugin.pp: Define to install etherpad
lite plugins.

* modules/etherpad_lite/manifests/site.pp: Simplify DB support and
remove support for the dirty DB type.

* modules/etherpad_lite/templates/etherpad-lite_settings.json.erb: Bring
settings erb up to par with latest template.

* modules/etherpad_lite/templates/etherpadlite.vhost.erb: Update rewrite
rules for new etherpad. Instead of allowing nice pad urls rooted at /
redirect these url to /p/padname. Etherpad does not deal well with a
change in root path as /p/ is hardcoded in many places.

* modules/openstack_project/manifests/etherpad.pp
* modules/openstack_project/manifests/etherpad_dev.pp:
Update to use new etherpad module setup. MySQL DBs are now externally
managed, pass in needed connection info.

* modules/mysql_backup/manifests/backup_remote.pp: New define to backup
remote DB servers.

* modules/mysql_backup/templates/my.cnf.erb: Template for a my.cnf to be
used by the cron in backup_remote.pp. Allows for easy connectivity from
server using MySQL DB as root.

Change-Id: I1250297674b91e81d59cd28c07c52e09967ca548
2013-10-09 16:53:06 -07:00
Monty Taylor
647a446d8f Remove launchpad_sync module
We do not sync from Launchpad any longer.

Change-Id: I414436278953347b65dfb5bfc394d067fbff307d
2013-10-09 11:55:05 -04:00
Elizabeth Krumbach Joseph
6fd82112e8 Add initial files for tripleo in the gate.
Add jenkins job builder tripleo script (based on pbr).

Add prepare_node_tripleo.sh which will be called by nodepool.

Add prepare_tripleo.sh script, based on the devstack script
but pulling in just the tripleo repositories with pull-tools
tripleo-incubator script.

Add tripleo stanza to nodepool itself.

Update site.pp with variables for tripleo authentication.

Add experimental pipeline to zuul's layout.yaml for this job on
tripleo-incubator.

Change-Id: I03433d08585ba3a783fe939264d7521cafa83e41
2013-10-07 12:50:21 -07:00
James E. Blair
eefbb633b4 Start using gearman-based bursting with nodepool
Also, reduce number of ready nodes slightly to better observe how
nodepool reacts.

Allow nodepool to talk to zuul's gearman server.

Change-Id: I764482062525b6ca5454b53cbd56861b24fd3764
2013-10-05 08:26:20 -07:00
Jeremy Stanley
fd832de552 Move elastic-recheck shell account out of /var/run
* manifests/site.pp: Expect the SSH key in /home rather than in
/var/run.

* modules/elastic_recheck/manifests/init.pp: Change the recheck
shell account for elastic-recheck to use a homedir in /home.

Change-Id: I43f4a8cdcb803328388b7e92732e5cb9d6acb2a8
2013-09-30 21:44:03 +00:00
Clark Boylan
e0427cfbb7 Deploy elastic-recheck on logstash.openstack.org.
This elastic recheck thing that classifies failures based on logstash
queries is awesome. We should run it on the OpenStack developer
infrastructure. Deploy it on logstash.o.o to keep related services
together.

Change-Id: I16ae7a32c2c48474454df17931779d0f60c3ed85
2013-09-30 18:56:23 +00:00
Jenkins
2f81032060 Merge "adding staging server for activity board" 2013-09-20 21:20:52 +00:00
Marton Kiss
648a8af52f Add groups-dev.openstack.org node
Add a groups-dev node to openstack infra, based on drupal
environment. This node checks out the repository:
https://git.openstack.org/openstack-infra/groups

Build a new deployment from scratch, including drush make
distbuild and drush si auto-installation features.

Change-Id: I71eef1c14724ceb13a896ff768923148dedcc2ef
2013-09-17 11:43:00 +02:00
Jeremy Stanley
ef399b91af Add a Jenkins slave for triggering salt commands
This is the skeleton we'll fill out with any additional
functionality needed by the salt-trigger slave.

Change-Id: I928c2fa4c64e69140b673615a8c18e4eea79e952
2013-09-12 17:38:19 +00:00
Stefano Maffulli
93490ce25d adding staging server for activity board
Change-Id: Ib2b0de6e2cdc59f5c9dca90117d333f70dbab040
2013-09-12 14:40:44 +10:00
Alex Gaynor
32db246dd3 Add support for running tox with PyPy and use it for Marconi
This works by installing PyPy from the Ubuntu PPA, and then invoking
`tox -e pypy` (similar to all the other Python buidlers). PyPy shares
nodes with the Python3 builders.

Change-Id: Ibf683c1995b0f5c04c93c56010befb222b386d7a
2013-08-27 13:44:10 -07:00
Clark Boylan
f22f8f5aa1 Split git.o.o haproxy out of cgit module.
* manifests/site.pp: Use distinct manifests for git.o.o and git.o.o
backends. This allows for the haproxy server to not serve git content
and purely be a load balancer.

* modules/cgit/manifests/init.pp: Remove haproxy from cgit module.
Remove stale xinetd cleanup. Select git daemon port when selecting
HTTP(S) ports.

* modules/openstack_project/manifests/git.pp: Make git.pp a manifest to
load balance git servers with haproxy.

* modules/openstack_project/manifests/git_backend.pp: New manifest to
manage servers that actually serve git content. They sit behind a load
balancer.

* modules/openstack_project/manifests/review.pp: Stop replicating repos
to git load balancer.

Change-Id: I343a0d1e0a7b93874c2e2299ed974a3304957efb
2013-08-26 12:05:26 -07:00
Clark Boylan
dea75ed695 Load balance git requests.
* install_modules.sh: Add puppetlabs-haproxy forge module.

* modules/cgit/manifests/init.pp: Add haproxy config to load balance
https, https and git protocol git access. Each git server will host git
http on port 8080, https on port 4443 and git protocol on 29418. These
endpoints will then be load balanced by a single haproxy instance
listening on ports 80, 443 and 9418. The use of haproxy and having
services listen on offset ports to accomodate haproxy is toggleable
using the $balance_git and $behind_proxy boolean flags.
Additionally, configure rsyslog for haproxy.

* modules/cgit/files/rsyslog.haproxy.conf: Enable syslog over UDP on
port 514. This is needed by haproxy to perform logging. Send local0
messages to /var/log/haproxy.log.

* modules/cgit/templates/ssl.conf.erb: Make Apache https listen port
configurable. Remove default virtualhost.

* modules/cgit/templates/httpd.conf.erb: Make Apache http listen port
configurable.

* modules/cgit/templates/git.vhost..erb: Make Apache http(s) listen
ports configuruable. Allow http without redirecting to https as a
fallback option to accomodate CentOS clients.

* modules/openstack_project/manifests/git.pp: Pass load balancer
variables through to the cgit manifest.

* manifests/site.pp: Configure git.o.o to run the load balancer haproxy
and balance across the new gitXX.o.o nodes.

Change-Id: Icefc5923cff9a7c6ce62c1923ec2ea87ebc6474a
2013-08-22 10:52:04 -07:00
James E. Blair
86b0f3bfd5 Fix nodepool setup scripts
The devstack cache steps were being run as the ubuntu user; make
sure they are run as jenkins.

Also update the nodepool configuration file to current values and
include the jenkins credential id.

Change-Id: Icbe8bee3b1800e28034cd36d4d328a6793d55b0e
2013-08-20 19:58:38 -07:00
James E. Blair
a38e256eb2 Remove devstack launch nodes and jobs
Change-Id: Icc6ba916df45b2a763f85a73412f9c8e1df88701
2013-08-18 08:43:50 -07:00
James E. Blair
8222c6e00f Add nodepool host
Change-Id: Ib216bd400aa269ccdb17848b3870ab65400cf3d2
2013-08-16 13:15:42 -07:00
Elizabeth Krumbach
f7fb31242b Put correct gerrit ssh pubkey on git.o.o
The pubkey being used previous was the server pubkey, not the
gerrit2 user pubkey. The gerrit2 user pubkey is now in hiera
and switched git.openstack.org to use that for the
authorized_keys file.

Change-Id: I6665ef119071b8b68e4cb6bb7f7e8d79ad04fcbc
2013-08-07 20:18:28 -07:00
Elizabeth Krumbach
8b81e9d213 Add httpd ssl support to git.openstack.org
Certificates have been added to hiera, now adding the support for
https in a new apache file.

Change-Id: I8447d60a15779b103556e53f04accf671dbf4843
2013-08-06 16:26:52 -07:00
Clark Boylan
ee6dabb785 Fix logstash.o.o elasticsearch discover node list.
Logstash.o.o needs to be given the host and port for its elasticsearch
discover node list. Fix the change that used just a list of hosts.

Change-Id: If421007f633eb54a5dc65d5ede57d1e0a6f1c5d9
2013-08-06 10:46:00 -07:00
James E. Blair
b4d1b7f3a2 Use jenkins credentials store with d-g
on the new jenkins systems.

Change-Id: I9d6c079abcc75cd0cf0acb3bcdad15be5a87ce28
2013-08-05 15:53:01 -07:00
James E. Blair
83494418ce Add new jenkins masters to zuul firewall
Change-Id: Id8dc54deea14150b972602249330e1081e594bc5
2013-08-05 13:39:53 -07:00
Jenkins
f6a8fc2ce8 Merge "Add Jenkins SSH key to proposal.slave." 2013-08-05 18:26:52 +00:00
Clark Boylan
48b235fe27 Add Jenkins SSH key to proposal.slave.
Proposal.slave.openstack.org is used to push change proposals into
Gerrit. To do this the slave needs to have the Jenkins' private SSH key
installed. Make it so.

Change-Id: Id3106d3167da0569370000e3c1a724a88abbd245
2013-08-05 10:38:59 -07:00
Jenkins
5a3898ed1e Merge "Cleanup unneeded Jenkins vars." 2013-08-05 17:27:44 +00:00
Jenkins
7e5901a397 Merge "Add sixth elasticsearch node." 2013-08-03 03:13:43 +00:00
Clark Boylan
2820835473 Add sixth elasticsearch node.
* manifests/site.pp: Put elasticsearch nodes in a list variable that is
reused.

* modules/logstash/templates/elasticsearch.yml.erb: Update cluster
settings to be more appropriate for the larger cluster size, including
changing the minimum number of master eligible nodes that must be seen
before becoming operational in a cluster. Should help prevent split
brained clusters.

* modules/openstack_project/manifests/cacti.pp: Add new node to cacti
node list.

Change-Id: I9a18422aa56a56b9ad030892a312772d9b6b2a79
2013-08-02 13:22:47 -07:00
Clark Boylan
ad46ddface Rename tx slave to proposal slave.
The tx slave is going to be used for other jobs that propose changes to
Gerrit. Give it a more appropriate name. This lines up with the move
from hosting this under rackspace legacy to rackspace nova.

Change-Id: I7168d62a4a0aae27d2cd2a7dc6c37595604c8251
2013-08-02 11:21:07 -07:00
Jenkins
250faac77d Merge "Add a mirror33 slave node definition." 2013-08-02 16:21:02 +00:00
Clark Boylan
663fd2225f Cleanup unneeded Jenkins vars.
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
2013-07-31 16:19:49 -07:00
Jenkins
fb99b4fa74 Merge "Switch Zuul/JJB to use LOG_PATH" 2013-07-31 21:30:06 +00:00
Jenkins
6380a51a8f Merge "Add new jenkins masters." 2013-07-31 21:29:14 +00:00
Jeremy Stanley
40fc367771 Add a mirror33 slave node definition.
This will eventually run a job to feed any Python 3.3 specific
dependencies into the pypi mirror.

Change-Id: Idcfca576ee3b531bad54be5d53e0219f8719c25c
2013-07-31 19:13:14 +00:00
James E. Blair
0ccf564937 Switch Zuul/JJB to use LOG_PATH
This calculates the full LOG_PATH in the Zuul config and pases it
to Jenkins.  The new path is similar to the old but with the
substitution of a short ZUUL_UUID at the end instead of the Jenkins
build number in order to avoid collisions from multiple Jenkins
masters.

Periodic jobs add a node name to their log path to avoid collisions
from multiple masters.  Unfortunately, that value is not accessible
to the logstash worker.  This can be solved by having Zuul trigger
periodic jobs.

Add the ZUUL_REF to logstash as "build_ref".

Requires https://review.openstack.org/#/c/39130/

Change-Id: I40bad59e3ad8ed6b4706762ed8b833fd15c13b0d
2013-07-29 17:47:08 -07:00
James E. Blair
49b62c5d3a Add new jenkins masters.
Add jenkins01 and jenkins02, both of which will have unit test and
devstack slaves.  Leave jenkins.o.o alone; over time it will be
reduced so that it alone has special jobs and privileged slaves
attached to it.

Note that currently all of the jobs will be defined on all nodes,
including jobs on timers.  I think the long-term fix for that is to
have zuul schedule timed jobs.

Change-Id: I10bbd5555e5194b1031700975d5b3ae6b458b8b3
2013-07-29 09:24:39 -07:00
Jenkins
7da5f4ea9d Merge "Add three more logstash workers nodes." 2013-07-26 18:02:06 +00:00
Jenkins
c82d56c458 Merge "Use precisepy3k instead of precise3k." 2013-07-24 21:59:48 +00:00
Clark Boylan
55e9e2137e Add three more logstash workers nodes.
We keep adding more tempest tests to run per patchset. These tests are
the most expensive to index as they come with many megabytes of
uncompressed logs. Add more logstash worker nodes in an attempt to keep
up.

Change-Id: I41d35792d58d1b0456927b0f5b1b7728bf3d145c
2013-07-23 15:49:39 -07:00
James E. Blair
624a89dd98 Add voipms configuration
Change-Id: Ib776c8944bb3b2564e52b94fdb2bd04ffc6835eb
2013-07-20 10:20:41 -07:00
Jeremy Stanley
84a692429e Use precisepy3k instead of precise3k.
* manifests/site.pp: Unfortunately node names like precise3k-1
match the existing node name pattern precise-?\d+.* and end up with
the precise.slave.openstack.org shared puppet cert as a result.
Switch to precisepy3k which won't have this unintended side effect.

Change-Id: I2a530b0e19af769700e85f9060c2cbd8592eef1d
2013-07-20 01:30:25 +00:00
Jenkins
1b8dd965f6 Merge "Add a node pattern for precise3k slaves." 2013-07-19 20:24:17 +00:00
James E. Blair
f7f2760fe0 Set the Zuul/Jenkins base log URL in a function
And use that when constructing log paths and URLs.  Use a substr
of the change id or commit sha when constructing URLs so the log
directories are deeper.

Make copying the test results a macro (it's used in several places).

Update the gearman log client to take advantage of the new parameter.

Requires https://review.openstack.org/#/c/36304/

Change-Id: I64faa35eddc4105271efa3de4f83b608b77655c2
2013-07-19 10:36:31 -07:00
Jeremy Stanley
fe2a4cd0a6 Add a node pattern for precise3k slaves.
* manifests/site.pp: Add a node pattern for slave servers which run
Ubuntu Precise Pangolin and default to Python 3.3 for the Puppet PIP
package provider.

* launch/README: Starting with precise3k slaves, individual Puppet
certificates will now be used per-server.

Change-Id: I2cde440720afd8014fc98dfd133d29a428751a9d
2013-07-18 22:34:36 +00:00
Jenkins
a7aea1e1ea Merge "Add a skeleton asterisk server." 2013-07-18 04:58:14 +00:00
Russell Bryant
3b18e93131 Add a skeleton asterisk server.
This commit adds a bare server that will be updated to become an
Asterisk server.

Change-Id: If54badab3269d8c8ce504f8bfcb0e5f79eeaeb69
2013-07-17 13:11:39 -04:00
Elizabeth Krumbach
52732dd550 Add cgit web service and git server
Define git.openstack.org server and deploy cgit web service with
Apache on CentOS.

Change-Id: Id3c7c870e25e4202915bc081454896895084f9af
2013-07-16 09:55:11 -07:00
Clark Boylan
76d3e632d4 Add two more elasticsearch nodes.
* manifests/site.pp: List the two new elasticsearch nodes in the
appropriate lists.

* modules/logstash/manifests/elasticsearch.pp: Do not restart
elasticsearch when config files change. Service restarts are costly and
should be manually performed when necessary. Otherwise puppet should
simply update the config files.

* modules/logstash/templates/elasticsearch.yml.erb: Update elasticsearch
config with new cluster topology. Increase memory available for
indexing.

* modules/openstack_project/manifests/cacti.pp: Add new nodes to cacti
monitoring list.

Adding two more elasticsearch nodes to relieve memory pressure (more
nodes means fewer indexes per nodes which requires less memory to
manage). And two more nodes gives us more disk to retain older indexes
in. These new nodes should allow us to retain at least 3 weeks of
indexed logs.

Change-Id: I3a5a02311e939c8147e401110c7b96d085eb8274
Reviewed-on: https://review.openstack.org/36305
Reviewed-by: Jeremy Stanley <fungi@yuggoth.org>
Approved: Clark Boylan <clark.boylan@gmail.com>
Reviewed-by: Clark Boylan <clark.boylan@gmail.com>
Tested-by: Jenkins
2013-07-09 18:40:21 +00:00