15881 Commits

Author SHA1 Message Date
Monty Taylor
f3304c38d5 Allow passing an arbitrary package list to assemble
This lets you build an image to install a package or set of packages
without having to build a fake pbr install.

Change-Id: I6c171881283b89a14a532f31aedb33e223a0ea1f
2020-04-22 19:15:51 -05:00
Monty Taylor
ba3a0eb775 Allow requesting a list of extras to install
We produce lists of extras requirements to install, but installing
them takes an extra step. Allow it to be done all at once by accepting
names of extras on the install-from-bindep command line.

Change-Id: Ie75b9a668569c759f78b70617e311ed6f025039a
2020-04-22 14:39:55 -05:00
Zuul
fe7d38af63 Merge "Remove system-config-puppet-beaker-rspec-puppet-4-centos-7-infra" 2020-04-21 18:09:45 +00:00
Zuul
8128922ca3 Merge "Remove global variables from manifest/site.pp" 2020-04-21 17:05:55 +00:00
Zuul
5bb5cd9c30 Merge "Remove unused gerrit puppet things" 2020-04-21 17:05:53 +00:00
Zuul
f1732987f0 Merge "Remove old etherpad.openstack.org" 2020-04-21 17:05:50 +00:00
Zuul
fa67bbd003 Merge "Cleanup unneeded things post docker-compose upgrade" 2020-04-20 22:26:47 +00:00
Zuul
fbcc45401b Merge "Use real passwords for meetpad" 2020-04-20 18:29:43 +00:00
Zuul
5c1c0d4a56 Merge "Move puppet apply jobs to system-config repo" 2020-04-20 17:30:56 +00:00
Zuul
486ebbbe2d Merge "Make applytest files outside of system-config" 2020-04-20 17:18:39 +00:00
Zuul
a1c74fe3a4 Merge "Remove unused rspec tests" 2020-04-20 17:13:35 +00:00
Zuul
f5cb448351 Merge "Remove puppet-beaker-rspec-puppet-4-infra-system-config" 2020-04-20 17:13:33 +00:00
Andreas Jaeger
ef2a21cc4d Remove system-config-puppet-beaker-rspec-puppet-4-centos-7-infra
This job is not used, remove it. OpenDev doesn't run CentOS 7 anymore.

Change-Id: I6865f24a6670d0c545a1e1014f7dd954d324b00d
2020-04-20 19:05:37 +02:00
Clark Boylan
5141306c71 Cleanup unneeded things post docker-compose upgrade
The zookeeper role can use the default pip installed docker-compose now.
We can also stop ensuring the distro package is removed as this has run
on all hosts at this point.

Change-Id: Ia034ae7d2c8e38494050698e1bfac0cc273dd200
2020-04-20 09:47:12 -07:00
James E. Blair
f7bf07a03d Use real passwords for meetpad
The docker containers expect this now and refuse to start with
fake passwords.

Change-Id: I4c4bd243c9684e3987eeb99e4c66d31a882336a0
2020-04-20 09:05:51 -07:00
Monty Taylor
fedd6c42f8 Fix remote_puppet playbook names
They have underscores, not dashes.

Change-Id: I6e3e0e96e38f24484e6038e502dfcc279e8e4fbf
2020-04-20 07:44:52 -05:00
Monty Taylor
3e4d99b6fd Remove global variables from manifest/site.pp
We have one global variable that is used in two places.
By removing it, we can more easily split site.pp into
per-service manifest files, and ultimately we should be
deriving this from groups['elasticsearch'] anyway.

Change-Id: I1d794b269847da85778f71e816359953af9b31e0
2020-04-19 10:59:25 -05:00
Monty Taylor
5468f49254 Remove unused gerrit puppet things
We ain't using em.

Change-Id: I4ce9188a6b6a7e6a670e61bb17ab07e890faebcf
2020-04-19 10:59:25 -05:00
Monty Taylor
711295e918 Remove old etherpad.openstack.org
Once the DNS is swapped over to point at etherpad.opendev.org
we can delete the old stuff.

Change-Id: I626dd22b22a23619fcf460533336f1ddfec615d9
2020-04-19 10:58:46 -05:00
Monty Taylor
ca684c775b Move puppet apply jobs to system-config repo
These use legacy-base, which sucks, but what sucks even more is
that they are in openstack-zuul-jobs, which makes them extra
awkward to try to adjust.

Change-Id: I87b3d56de41f0ba5658c1240ddfc7ecf1c3c43af
2020-04-19 10:57:22 -05:00
Monty Taylor
00f30529e3 Make applytest files outside of system-config
We are copying system-config in parallel to a bunch of targets
and we're also creating and deleting applytest files. Instead,
do the apply test files outside of the dir that's going to
get synced in the puppet role.

While we're at it, copy don't link the openstack_project
module into /etc/puppet/modules, just to be sure.

Change-Id: I4bcd8ebd6da8395e77d673ac76f4c41568d810ec
2020-04-19 10:57:22 -05:00
Monty Taylor
efd3ad59d9 Remove unused rspec tests
We got rid of the job, let's get rid of the tests.

Change-Id: I8fed8d2d381020594de63bf1069f68122d018c47
2020-04-19 10:57:22 -05:00
Monty Taylor
1a39133661 Remove puppet-beaker-rspec-puppet-4-infra-system-config
This doesn't actually do anything useful any more, but it spends
a lot of time not doing it.

Basically, this is only testing the things in
modules/openstack_project/spec/acceptance/basic_spec.rb, which
are things we install and test in ansible now.

There are related jobs, puppet-beaker-rspec-puppet-4-infra,
which are run on puppet- repos and run their rspec tests, but
that won't be affected by this.

Change-Id: I21b01d360b50dba10673c2986e8a2868b8747522
2020-04-19 10:57:22 -05:00
James E. Blair
5a3a00f61e Meetpad: proxy through meetpad to etherpad.opendev.org
This makes two changes: it proxies all etherpad traffic through
the nginx running in docker in order to avoid any weird cross-domain
problems.

It also switches to using the new etherpad.opendev.org server.

Change-Id: I99f7f284088f0d241a8490d01cccdf782bdd45d2
2020-04-18 11:02:42 -07:00
Monty Taylor
446b24c52f Run a noop on all zookeeper servers first
We need to touch them so that all of their hostvars are visible
in playbooks/roles/zookeeper/templates/zoo.cfg.j2

Change-Id: I04f225269ac31a4890f692c214e8ffb8878833aa
2020-04-17 17:57:34 -05:00
Zuul
faccef4594 Merge "Add install-docker and pip3 to files triggers" 2020-04-17 22:19:46 +00:00
Zuul
e830ac496e Merge "Install pip3 for docker-compose installation" 2020-04-17 22:16:03 +00:00
Zuul
f1a4cd812d Merge "Remove semaphore from service-bridge" 2020-04-17 21:25:36 +00:00
Monty Taylor
7f5faf8eec Add install-docker and pip3 to files triggers
The jobs which use install-docker and pip3 should be triggered
by changes to install-docker or pip3.

Change-Id: Ia6ec8da72fee38377760cb27dd7df26fa169760b
2020-04-17 20:31:33 +00:00
Monty Taylor
f378793ac5 Remove semaphore from service-bridge
This is not intended to have its own semaphore.

Change-Id: I587b22f099c6031177e590dbb8dabd8c2ee58295
2020-04-17 15:29:06 -05:00
Clark Boylan
02a81a5c7f Install pip3 for docker-compose installation
We need newer docker-compose for functionality like stop_grace_period
and the easiest way to get that is via pypi. To install from there we
need pip.

This also fixes pip3 to work on xenial which doesn't have a
python3-distutils package.

Change-Id: I5f5431cac7eb191f2f5443892292ca5a236fe1e6
2020-04-17 13:28:03 -07:00
Zuul
268c6a7156 Merge "No longer push refs/changes to GitHub mirrors" 2020-04-17 19:50:41 +00:00
Zuul
049f167f5c Merge "Use HUP to stop gerrit in docker-compose" 2020-04-17 19:49:55 +00:00
Zuul
5e4901b7c6 Merge "Install docker-compose from pypi" 2020-04-17 19:11:19 +00:00
Zuul
b0ab2f37c5 Merge "Run ZK from containers" 2020-04-17 16:49:34 +00:00
Clark Boylan
e7878b1ddb Simplify .zuul.yaml regexes
Zuul uses an re.match() check on file list regexes. This means that the
leading ^ is redundant as is a trailing .*

Attempt to make this more clear by dropping those leading and trailing
regex operators to be consistent across the file. This makes the rules
easier to read and should make them easier to reason about.

Change-Id: Id4cd17d816c9af023a655bdadeedb9421e51cdca
2020-04-17 08:54:27 -07:00
James E. Blair
42574b2b37 Run ZK from containers
Migration plan:
* add zk* to emergency
* copy data files on each node to a safe place for DR backup
* make a json data backup: zk-shell localhost:2181 --run-once 'mirror / json://!tmp!zookeeper-backup.json/'
* manually run a modified playbook to set up the docker infra without starting containers
* rolling restart; for each node:
  * stop zk
  * split data and log files and move them to new locations
  * remove zk packages
  * start zk containers
* remove from emergency; land this change.

Change-Id: Ic06c9cf9604402aa8eb4bb79238021c14c5d9563
2020-04-17 08:43:09 -07:00
Zuul
f3ed4c6ec0 Merge "Remove snap cleanup tasks" 2020-04-17 12:51:20 +00:00
Zuul
f2ca3c8a2e Merge "Install kubectl via openshift client tools" 2020-04-17 12:49:07 +00:00
Thierry Carrez
6935318712 No longer push refs/changes to GitHub mirrors
By default gerrit replication pushes +refs/*:refs/*, which includes
refs/changes. For large repositories that potentially means hundreds
of thousands of references.

Per-repo git mirroring does not push refs/changes, so when it runs it
ends up deleting those references, which can take a long time, blocking
the executor.

To fix that, we should:
- stop pushing refs/changes to GitHub (this change)
- delete refs/changes on GitHub repositories, asynchronously
- enable per-repo replication
- disable Gerrit-wide replication

NB: it is unclear if Gerrit replication would start deleting the
    extraneous references on remote GitHub repositories once this
    merges. If this is the case, since replication is limited to a
    single thread (default value for 'threads') and is not happening
    in an executor, this should not have negative impact, beyond
    potentially delaying GitHub mirroring.

Change-Id: I94f69c889c9b4418ef81b3b2ca436ba99696ba72
2020-04-17 11:54:01 +02:00
Zuul
4a9e839dd0 Merge "Remove puppet and cron mentions from docs" 2020-04-16 21:18:08 +00:00
Clark Boylan
81265393d8 Use HUP to stop gerrit in docker-compose
Also add a 5 minute stop grace period. This lines up with the init
script we were using when this was a systemd managed service.

Change-Id: I5a92bb214b96447008ad570e176adda13c4ca0cb
2020-04-16 14:08:10 -07:00
Clark Boylan
8eb981b47f Install docker-compose from pypi
We want to use stop_grace_period to manage gerrit service stops. This
feature was added in docker-compose 1.10 but the distro provides 1.5.
Work around this by installing docker-compose from pypi.

This seems like a useful feature and we want to manage docker-compose
the same way globally so move docker-compose installation into the
install-docker role.

New docker-compose has slightly different output that we must check for
in the gitea start/stop machinery. We also need to check for different
container name formatting in our test cases. We should pause here and
consider if this has any upgrade implications for our existing services.

Change-Id: Ia8249a2b84a2ef167ee4ffd66d7a7e7cff8e21fb
2020-04-16 12:08:00 -07:00
Monty Taylor
6b467808ed Remove snap cleanup tasks
We don't need to keep cleaning up snap after the first time.

Change-Id: Ibd51afe152b234ee86f7cccacbe54bbc75560901
2020-04-16 12:45:36 -05:00
Monty Taylor
fcee508fbc Install kubectl via openshift client tools
Instead of installing kubectl with snaps, which seem to be laky
in tests, just download the oc client tools tarball and unpack it.
This is how we get kubectl for the zuul images and it seems to
work nicely there.

Change-Id: I79590a2eeaf32722d231c2bfec35d264696b7e7a
2020-04-16 12:45:32 -05:00
Monty Taylor
d231d6177e Grant access to robots.txt
Apache doesn't like serving files it hasn't been allowed to.

Change-Id: I1113c44f9621229074804d60eba7549ae1236583
2020-04-16 12:28:12 -05:00
Monty Taylor
3469673a11 Add apache connection tuning back to apache
This was missed in the migration.

Change-Id: I09ac1f117b62b659f93ce01b73a4270378d2e25d
2020-04-16 12:14:08 -05:00
Zuul
e3ad9e79eb Merge "Get rid of all-clouds.yaml" 2020-04-16 15:41:55 +00:00
Monty Taylor
cba5129465 Remove puppet and cron mentions from docs
We've got some old out of date docs in some places. This isn't even
a full reworking, but at least tries to remove some of the more
egregiously wrong things.

Change-Id: I9033acb9572e1ce1b3e4426564b92706a4385dcb
2020-04-16 07:04:14 -07:00
Monty Taylor
34c8e161b7 Set ansible_host explicitly
Pass the ansible_host variable explicitly to mirror-workspace-git-repos
because for some reason it's confused and getting localhost.

Change-Id: I8a30b98a6eef168d11d4d580de359546ee1da252
2020-04-16 08:34:09 -05:00