537 Commits

Author SHA1 Message Date
Clark Boylan
8bd788dd02 Remove bullseye python3.11 image builds
zuul-registry was the last user of bullseye python3.11 images and
recently it updated to bookworm. This leaves python3.10 images as the
last bullseye images we are building (zuul-operator currently consumes
these).

Change-Id: I5b8573bff0ae628afe5f529a86a99b01cdf9f48d
2024-01-08 10:19:13 -08:00
Zuul
6ba06de8e4 Merge "Add gerrit 3.8 to 3.9 upgrade testing" 2023-12-07 17:59:08 +00:00
Zuul
21fd65e03f Merge "Add gerrit 3.9 image builds" 2023-12-07 17:59:06 +00:00
Zuul
5d8ddca562 Merge "Add python3.12 bookworm base images" 2023-12-05 20:09:54 +00:00
Clark Boylan
ca97f1e0d6 Add gerrit 3.8 to 3.9 upgrade testing
The Gerrit 3.9 release notes [0] indicate this is a very similar upgrade
to the previous 3.7 to 3.8 upgrade. Specifically we only need to run
init and online reindexing will occur on startup of the new version.
For this reason not much changes other than version numbers.

[0] https://www.gerritcodereview.com/3.9.html

Change-Id: I11f7b3d5e0c545d9b78fb656ea1f09fe57b5994e
2023-12-01 14:01:40 -08:00
Clark Boylan
aadce43971 Add gerrit 3.9 image builds
We need to add java-prettify to our submodule setup as this is a new
gerrit submodule. While we're in there we also cleanup some python
binary symlinks that were only necessary for Gerrit 3.5 and older.

The Gerrit 3.9.0 release was a bad release because it accidentally
updated lucene versions to far ahead of 3.8.x. This broke online
reindexing post upgrade from 3.8.x to 3.9.0. To address this the Gerrit
project pulled 3.9.0, reverted a bunch of stuff, made a 3.9.0-rc6, we
tested this (as did others), and when everything was working as expected
released 3.9.1 to replace 3.9.0. That is the reason we are starting our
image builds with 3.9.1 and not 3.9.0.

It should be noted that 3.9.0 should be entirely avoided as well.

Depends-On: https://review.opendev.org/c/openstack/project-config/+/901479
Change-Id: Ice2201ce5a7b3f560923dce84af2603bdc709ab9
2023-12-01 13:59:50 -08:00
Clark Boylan
47d2e07d94 Trigger gerrit image promotion when the gerrit image jobs update
We often need to update gerrit image build details that only live in the
job specification. For example tag or branch versions of gerrit and
related repos. When we do this if we don't also do a noop update to our
Dockerfiles the promotion job doesn't run for these images because we
can't do the implicit file match in the promotion (deploy) pipeline.

Fix this by explicitly matching the job config file in our jobs so that
when we update the gerrit jobs we also run the gerrit image promotion
jobs.

We also ensure the system-config-run-review and
infra-prod-service-review jobs are triggered when the docker image jobs
update. This ensures we actually test the resulting images and then
perform potentially necessary deployment actions before they are pulled
into use.

Change-Id: Id0c51818cd1e01bd16a79ab0c0f9172e844376b8
2023-11-29 10:19:02 -08:00
Clark Boylan
787415f0c5 Update Gerrit 3.8 images to 3.8.3
Gerrit has released a 3.8.3 bugfix release. The release notes cover the
changes [0] made. In addition to the listed changes we should also pull
in a bugfix for change submissions failing due to a null account field
in metrics gathering. The reason for this is we actually build
stable-3.8 and not off of the 3.8.3 tag and this bugfix was included
after the bugfix release. Basically we build latest stable rather than
the tagged release.

We should probably keep an eye on general performance as we may need to
modify cache maxAge and refresh settings due to these being honored by
persistent caches now. Otherwise this update should be pretty
straightforward.

[0] https://www.gerritcodereview.com/3.8.html#383

Change-Id: I1d25645b84ed98d18f4b8246831623e767b5932d
2023-11-29 08:08:46 -08:00
Clark Boylan
e6f8d17be4 Add python3.12 bookworm base images
This is probably of limited utility currently as we don't have any good
test platforms for running jobs on top of python3.12 outside of these
container images. That said this will ensure our base job setup works
with python3.12, and give early adopters the option of working with
python3.12 in this way.

Change-Id: Ief76c76e86c8cbae50e9fc7cb34356fa1c8e99a8
2023-11-21 09:06:00 -08:00
Clark Boylan
0cdea3b3c9 Cleanup Gerrit 3.7 image jobs and disable Gerrit upgrade job
We'll want to merge this when we're confident that we won't be reverting
Gerrit back to 3.7 from 3.8. A followup will add Gerrit 3.9 images and
reenable the upgrade job.

Depends-On: https://review.opendev.org/c/openstack/project-config/+/901465
Change-Id: I26b5afadbe271cb6abea5b8bd79fa8a4a30ea478
2023-11-20 08:10:49 -08:00
Clark Boylan
c17fe1155a Switch gerrit 3.7 image to 3.8 in a couple places we missed
One spot is a default for testing that I'm pretty sure we override
everywhere anyway and the other is the resource requirement for the
infra-prod deployment job. Neither are critical, but good to have both
up to date after our upgrade.

Change-Id: If74ec2707cfadff1772596891e5a2783e83eb01b
2023-11-20 08:07:39 -08:00
James E. Blair
3d5c2a810e Revert registry.zuul-ci.org
This project didn't proceed past the test phase,
let's clean it up.

Revert "Add a functional test for registry.zuul-ci.org"
This reverts commit e701fdd3ca1d798bd912b19e91e154e8a88f43b8.

Revert "Add testinfra for registry.zuul-ci.org"
This reverts commit e00f4e59b39cabc3e33823a957d3623dce06f9c4.

Revert "Add static site for registry.zuul-ci.org"
This reverts commit 31b505d3ba29f751b8f02ff365ee6de6b5d350f9.

Revert "Add SSL cert for registry.zuul-ci.org"
This reverts commit d0a8473d42bb0ee3ab1cc8bffbf5bb2fea90f755.

Change-Id: I1d39306187c7b2d7a908389f88d1a60e1b29ffe3
2023-11-14 16:05:28 -08:00
Tony Breeds
f149a7a38e Add the inventory dir to files for system-config-run-base{,-arm64}
It was noticed due to 900220[1] that the base jobs are missing a files
entry for inventory/ updates.  Fix that.

[1] https://review.opendev.org/c/opendev/system-config/+/900220

Change-Id: I1ba932f3865734a425c54585badc84b5218b9ef6
2023-11-07 13:58:13 -06:00
Zuul
f1c7d7a8de Merge "Add a jammy test node for regional mirrors" 2023-11-01 22:21:40 +00:00
Tony Breeds
f223a237a2 Add a jammy test node for regional mirrors
Change-Id: I922af92e523407b7324f020732fad52b98f027e1
2023-10-31 18:27:59 -05:00
Jeremy Stanley
73f0a5336a Merge production and test node mailman configs
Now that the Mailman v3 migration is complete, we no longer need any
divergence between the lists01 (production) and lists99 (test node)
host vars, so put everything into the group vars file instead.

Change-Id: If92943694e95ef261fbd254eff65a51d8d3f7ce5
2023-10-30 19:26:03 +00:00
Zuul
2a62ea5c44 Merge "Stop building python3.9 container images" 2023-10-25 14:52:39 +00:00
Zuul
bd3fd30462 Merge "Remove the old mailing list server" 2023-10-20 23:04:26 +00:00
Jeremy Stanley
cab53d10ac Remove the old mailing list server
Clean up references to lists.openstack.org other than as a virtual
host on the new lists01.opendev.org Mailman v3 server. Update a few
stale references to the old openstack-infra mailing list (and
accompanying stale references to the OpenStack Foundation and
OpenStack Infra team). Update our mailing list service documentation
to reflect the new system rather than the old one. Once this change
merges, we can create an archival image of the old server and delete
it (as well as removing it from our emergency skip list for
Ansible).

Side note, the lists.openstack.org server will be 11.5 years old on
November 1, created 2012-05-01 21:14:53 UTC. Farewell, old friend!

Change-Id: I54eddbaaddc7c88bdea8a1dbc88f27108c223239
2023-10-20 18:10:08 +00:00
Clark Boylan
4dc053ff0f Stop building python3.9 container images
Drop the python3.9 container images (python-builder, python-base,
uwsgi-base). At this point nothing is building off of these images and
we should be using python3.11 for anything new.

Note that python3.10 can be cleaned up once zuul-registry and
openstackclient stop building on top of python3.10. Everything else
appears to be python3.11 at this point.

Change-Id: Id30b616ec336a5599766fb808f55e228da686439
2023-10-16 13:52:07 -07:00
Clark Boylan
6e9dfad01b Fix job dependencies on old container images
We recently updated all of these items to build on newer container
images but some of the job dependencies for that were missed. Fix this
before we start cleaning up the old container builds.

Change-Id: I90946007026f9ca84f4fc6f0e5fe5fbf76d21627
2023-10-16 13:50:39 -07:00
Clark Boylan
944b78154d Fix the relevant files lists for lists3 jobs
Fix the infra-prod-service-lists3 job to trigger when we update the
mailman3.yaml group vars file. In addition we make a noop reorganization
change to the mailman3 group file to group exim vars together which will
be used to ensure that this change triggers the lists3 job as expected.

In system-config-run-lists3 we update that job to be triggered when we
update the docker images for mailman. We don't bother testing this now
as that would be masked off by the update to the mailman3 groups file.
But in the future when we do mailman3 image updates we'll be looking for
this job to run.

Change-Id: I994b0a79bf46f525dd9e059719f5a08c9c390b8c
2023-10-15 19:52:01 -07:00
Zuul
3d8fab4ff6 Merge "Remove ara from source install option" 2023-10-12 18:07:39 +00:00
Zuul
51003247f8 Merge "Update Gerrit to 3.7.5" 2023-10-11 23:31:19 +00:00
James E. Blair
e85ab6f746 Add a debug python base image
This adds a python-base:3.11-bookworm-debug image, which is built
on the normal python:3.11-bookworm upstream image instead of the
slim upstream image.  The normal image includes debug symbols for
the python interpreter which is compiled during its build phase,
so this is the best way to get an opendev python-base image with
debug symbols.

Change-Id: I1d89ac947cd3bea8a468f3ee022fb4cc93bece1f
2023-10-10 08:30:32 -07:00
Zuul
cac37a7a3c Merge "Update gerrit image to bookworm" 2023-10-09 16:19:47 +00:00
Clark Boylan
00c098bcad Bump refstack to Bookworm and python3.11
Refstack doesn't rely on much in the base operating system as far as I
can tell. That said refstack seems to test with python3.10 and not 3.11
so this may not work, but our testing should give us a good idea. Bump
these things up as we are updating all the services we can in order to
eventually cleanup image builds for old debian and old python.

Change-Id: Id39027691484e8f81bd097c174f0a4a1e81463af
2023-09-19 10:22:56 -07:00
Clark Boylan
da41905b79 Update Gerrit to 3.7.5
Gerrit just released new point versions for all supported branches
including an update of 3.7 to 3.7.5. We also bump our 3.8 image up to
3.8.2 (note this isn't used in production, only for testing of the
upgrade to 3.8 currently).

Release notes can be found here:

  https://www.gerritcodereview.com/3.7.html#375
  https://www.gerritcodereview.com/3.8.html#382

The updates look minor for us, but there are some bug fixes so worth
updating. We might want to land this change as well as the bookworm
update together in order to do a single short gerrit downtime to get all
of these updates deployed in production.

Change-Id: Ib4ccfe12db94d032fc4743a7aafdf90735aecfa3
2023-09-15 15:39:34 -07:00
Clark Boylan
2888408833 Convert haproxy-statsd to bookworm base image
We keep the same python 3.11 version we had on bullseye but switch the
rest of the userspace to bookworm. Since the python version doesn't
change this should have minimal impact.

Change-Id: I59ad8c2a92159f51d567dd0212e2ab8bec1b45b1
2023-09-14 13:36:18 -07:00
Jeremy Stanley
a6ab3543fc Move Airship and Kata lists to Mailman 3
This uncomments the list additions for the lists.airshipit.org and
lists.katacontainers.io sites on the new mailman server, removing
the configuration for them from the lists.opendev.org server and, in
the case of the latter, removing all our configuration management
for the server as it was the only site hosted there.

Change-Id: Ic1c735469583e922313797f709182f960e691efc
2023-09-14 12:08:34 +00:00
Clark Boylan
1132c93cdc Remove ara from source install option
This was a testing only setup that allowed us to test ara from master
against ansible from devel against system-config master. This job is
primarily used for ansible stuff and not ara stuff and cleaning this up
will allow us to reduce the total number of github repos zuul talks to.

The zuul github repo cleanup is important because we hit github api
limits when restarting zuul from a clean slate (no caches). We should
evaluate if other repos can have the same cleanup done against them as
well.

Change-Id: Ideb5d6f52a7c471520b5cbba33aa5c9ca4e550e0
2023-09-11 13:04:12 -07:00
James E. Blair
fec1277185 Update gerrit image to bookworm
And upgrade to Python 3.11, and JDK to 17.

Change-Id: I7c9415e6706141db6cd9cab056a439da81469def
2023-09-08 08:28:22 -07:00
Zuul
53391950e1 Merge "Run bootstrap-bridge with empty nodeset" 2023-09-04 12:53:13 +00:00
Zuul
af6c43bce3 Merge "Update jinja-init image to bookworm" 2023-08-30 16:13:58 +00:00
Zuul
52b865a9eb Merge "Update zookeeper-statsd image to bookworm" 2023-08-25 21:21:16 +00:00
Jeremy Stanley
c9c8febd84 Trigger mm3 deployment when containers change
Add the docker/mailman tree to the infra-prod-service-lists3 job so
that we deploy new versions whenever we make changes to the
container images.

Change-Id: Ife5e878b1f81c2879c2959fe6d4de22fe841583b
2023-08-25 16:35:46 +00:00
James E. Blair
55abbf33bf Update hound image to bookworm
Change-Id: I51b8630b27149aa96c63d13d6fae240c5c81cd96
2023-08-24 11:31:46 -07:00
James E. Blair
d39162a79a Update zookeeper-statsd image to bookworm
And upgrade to Python 3.11.

Change-Id: I863aabd21e0518879604b187509aa9b46b15bace
2023-08-24 11:19:23 -07:00
James E. Blair
1354a1e6da Update jinja-init image to bookworm
And upgrade to python 3.11.

Change-Id: I47a99263b93be027ffe251fce24d677d07f519d7
2023-08-24 11:18:11 -07:00
Clark Boylan
9fdbed9c27 Run bootstrap-bridge with empty nodeset
We are currently using the default nodeset on the
infra-prod-bootstrap-bridge job which results in us waiting for a node
that we end up ignoring. As far as I can tell this job runs against
localhost and the add_host bridge entry. It ignores the default test
node from the nodeset.

Speed up job execution and reduce node waste by setting an empty nodeset
on the job.

Change-Id: I8c3ffda60b92a8655989579335a49423fbdd18a2
2023-08-17 09:59:09 -07:00
Zuul
da29540162 Merge "Update docker-images/python* to remove '.*'" 2023-07-26 22:04:04 +00:00
Zuul
727724af17 Merge "Add $self to the list of files for python images." 2023-07-26 22:04:02 +00:00
Zuul
10244654c1 Merge "Update ircbot and matrix-eavesdrop to python-3.11" 2023-07-26 22:00:01 +00:00
Zuul
3d14237dac Merge "Update Gerrit images to current versions" 2023-07-25 21:32:58 +00:00
Tony Breeds
e2ec0d18fb Update docker-images/python* to remove '.*'
In "Add a uwsgi-base container image"
(08a807/Iaf6d31a3d119f6b7e87b54cda1969a9994110dad)  The uWSGI containers
added an explicit, but redundant, trailing '.*' for the files settings
of the uWSGI containers.  This change is largely cosmetic but for
style consistency let's remove them.

Change-Id: I04162384fbf6a09cffc1aec76777dd6e21752a0e
2023-07-17 17:40:37 +10:00
Tony Breeds
5ed6598c6b Add $self to the list of files for python images.
With the merging of [1] we observed that the images built
(python-3.{9,10,11}-bookworm) were not then promoted.  This was fixed
in [2] as the assumption is that the promotion jobs didn't trigger
because the files modified in [1] don't match the needed files.  This
change adds the zuul configuration file to the list of relevant files.

We're not 100% sure that this will work but it's worth a try.

[1] https://review.opendev.org/c/opendev/system-config/+/888102
[2] https://review.opendev.org/c/opendev/system-config/+/888633

Change-Id: I958a0af6fbad80f8152438aaee6b7268432f64d5
2023-07-17 17:40:37 +10:00
Tony Breeds
3b2016039c Update ircbot and matrix-eavesdrop to python-3.11
Change-Id: I813f62d06212b09638baa7ef0be0de1ad9ff7d83
2023-07-17 17:40:37 +10:00
Clark Boylan
c02fe3019d Update Gerrit images to current versions
Gerrit 3.8 has been released for a bit. Update our 3.8 image builds to
pull the latest 3.8.1 version for testing.

Gerrit 3.7.4 has also been released. We update our 3.7 images to 3.7.4.
Note this is our production image and this update will affect prod
unlike the 3.8.0 update. Changelog is here:

  https://www.gerritcodereview.com/3.7.html#374

The only breaking change is related to prometheus metrics which we
aren't using (yet).

Change-Id: I52854ed097e295c070e642808e9dae793dc8a716
2023-07-16 16:20:27 -07:00
Tony Breeds
31c3aa52b9 Update accessbot,ircboot and matrix-eavesdrop to bookworm container
Change-Id: Idb096e21f57df3db1acc3d3afe3881e2e540f965
2023-07-12 14:47:14 +10:00
Tony Breeds
b3fb6641ad Add Debian bookworm based python images
uWSGI: libffi7 has been retired with bullseye so update to libffi8

Change-Id: I3e7e05b0e0148d73e7f0087f456a3f8de10e0c87
2023-07-12 12:18:19 +10:00