Add Gerrit 3.8 image builds and test jobs

Gerrit 3.8 isn't officially released yet, but they have relaesed their
third release candidate. Seems like a good time to start building a 3.8
image and testing it.

Change-Id: I11bcd35379cecde135f471a840b03937166b6663
This commit is contained in:
Clark Boylan 2023-04-26 11:03:19 -07:00
parent cee951e6a9
commit 40390f996e
3 changed files with 123 additions and 0 deletions

@ -134,6 +134,99 @@
vars: *gerrit_vars_3_7
files: *gerrit_files_3_7
# Gerrit 3.8 jobs
- job:
name: system-config-build-image-gerrit-3.8
description: Build a gerrit image.
parent: system-config-build-image
pre-run:
- playbooks/zuul/gerrit/repos.yaml
- playbooks/zuul/gerrit/submodules.yaml
run: playbooks/zuul/gerrit/run.yaml
requires: gerrit-base-container-image
provides: gerrit-3.8-container-image
required-projects: &gerrit_projects_3_8
- name: opendev/system-config
override-checkout: master
- name: gerrit.googlesource.com/gerrit
override-checkout: stable-3.8
# Backend behavior plugins
- name: gerrit.googlesource.com/plugins/commit-message-length-validator
override-checkout: v3.8.0-rc3
- name: gerrit.googlesource.com/plugins/delete-project
override-checkout: v3.8.0-rc3
- name: gerrit.googlesource.com/plugins/hooks
override-checkout: v3.8.0-rc3
- name: gerrit.googlesource.com/plugins/its-base
# There is no 3.8 branch
override-checkout: master
- name: gerrit.googlesource.com/plugins/its-storyboard
# There is no 3.8 branch
override-checkout: master
- name: gerrit.googlesource.com/plugins/plugin-manager
override-checkout: v3.8.0-rc3
- name: gerrit.googlesource.com/plugins/replication
override-checkout: v3.8.0-rc3
# The v3.8.0-rc3 version of reviewnotes fails with
# plugins/reviewnotes/src/main/java/com/googlesource/gerrit/plugins/reviewnotes/RefUpdateListener.java:73: error: [ReturnMissingNullable] Method returns a definitely null value but is not annotated @Nullable
- name: gerrit.googlesource.com/plugins/reviewnotes
override-checkout: master
- name: gerrit.googlesource.com/plugins/singleusergroup
override-checkout: v3.8.0-rc3
- name: gerrit.googlesource.com/plugins/webhooks
override-checkout: v3.8.0-rc3
# UI behavior plugins
- name: gerrit.googlesource.com/plugins/codemirror-editor
override-checkout: v3.8.0-rc3
- name: gerrit.googlesource.com/plugins/download-commands
override-checkout: v3.8.0-rc3
- name: gerrit.googlesource.com/plugins/gitiles
override-checkout: v3.8.0-rc3
- name: gerrit.googlesource.com/plugins/zuul-results-summary
override-checkout: main
# Non plugin submodules
- name: gerrit.googlesource.com/jgit
override-checkout: master
- name: gerrit.googlesource.com/polymer-bridges
override-checkout: v3.8.0-rc3
vars: &gerrit_vars_3_8
docker_images:
- context: docker/gerrit/bazel
repository: opendevorg/gerrit
target: gerrit
path: /home/zuul/src/gerrit.googlesource.com/gerrit
tags:
- 3.8
files: &gerrit_files_3_8
- docker/gerrit/base/
- docker/gerrit/bazel/
- playbooks/zuul/gerrit/
- playbooks/test-review.yaml
- testinfra/test_gerrit.py
- jeepyb/
- roles/bazelisk-build/
- job:
name: system-config-upload-image-gerrit-3.8
description: Build and upload a gerrit image.
parent: system-config-upload-image
pre-run:
- playbooks/zuul/gerrit/repos.yaml
- playbooks/zuul/gerrit/submodules.yaml
run: playbooks/zuul/gerrit/run.yaml
requires: gerrit-base-container-image
provides: gerrit-3.8-container-image
required-projects: *gerrit_projects_3_8
vars: *gerrit_vars_3_8
files: *gerrit_files_3_8
- job:
name: system-config-promote-image-gerrit-3.8
description: Promote a previously published gerrit image to latest.
parent: system-config-promote-image
vars: *gerrit_vars_3_8
files: *gerrit_files_3_8
# Gerrit master jobs
- job:
name: system-config-build-image-gerrit-master-base
@ -232,6 +325,11 @@
- name: opendev-buildset-registry
- name: system-config-build-image-gerrit-base
soft: true
- system-config-build-image-gerrit-3.8:
dependencies:
- name: opendev-buildset-registry
- name: system-config-build-image-gerrit-base
soft: true
- system-config-build-image-gerrit-master:
voting: false
dependencies:
@ -250,7 +348,13 @@
- name: opendev-buildset-registry
- name: system-config-upload-image-gerrit-base
soft: true
- system-config-upload-image-gerrit-3.8:
dependencies:
- name: opendev-buildset-registry
- name: system-config-upload-image-gerrit-base
soft: true
deploy:
jobs:
- system-config-promote-image-gerrit-base
- system-config-promote-image-gerrit-3.7
- system-config-promote-image-gerrit-3.8

@ -70,6 +70,11 @@
- name: opendev-buildset-registry
- name: system-config-build-image-gerrit-3.7
soft: true
- system-config-run-review-3.8:
dependencies:
- name: opendev-buildset-registry
- name: system-config-build-image-gerrit-3.8
soft: true
# TODO update upgrade job to do 3.7 -> 3.8 upgrades
#- system-config-upgrade-review:
# dependencies:
@ -223,6 +228,11 @@
- name: opendev-buildset-registry
- name: system-config-upload-image-gerrit-3.7
soft: true
- system-config-run-review-3.8:
dependencies:
- name: opendev-buildset-registry
- name: system-config-upload-image-gerrit-3.8
soft: true
- system-config-run-refstack:
dependencies:
- name: opendev-buildset-registry

@ -1128,6 +1128,15 @@
vars:
zuul_test_gerrit_version: '3.7'
- job:
name: system-config-run-review-3.8
parent: system-config-run-review-base
description: |
Run the playbook for gerrit 3.8 (in a container).
requires: gerrit-3.8-container-image
vars:
zuul_test_gerrit_version: '3.8'
# TODO Update the upgrade job to test 3.7 -> 3.8 upgrades
#- job:
# name: system-config-upgrade-review