From 40390f996e8f55695c1545fd7ef89a48ab09f0a1 Mon Sep 17 00:00:00 2001 From: Clark Boylan Date: Wed, 26 Apr 2023 11:03:19 -0700 Subject: [PATCH] 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 --- zuul.d/docker-images/gerrit.yaml | 104 +++++++++++++++++++++++++++++++ zuul.d/project.yaml | 10 +++ zuul.d/system-config-run.yaml | 9 +++ 3 files changed, 123 insertions(+) diff --git a/zuul.d/docker-images/gerrit.yaml b/zuul.d/docker-images/gerrit.yaml index cccbeffd90..3127b82fb8 100644 --- a/zuul.d/docker-images/gerrit.yaml +++ b/zuul.d/docker-images/gerrit.yaml @@ -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 diff --git a/zuul.d/project.yaml b/zuul.d/project.yaml index ed5f51f109..4826c70b77 100644 --- a/zuul.d/project.yaml +++ b/zuul.d/project.yaml @@ -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 diff --git a/zuul.d/system-config-run.yaml b/zuul.d/system-config-run.yaml index 60a11b562e..dd416433ec 100644 --- a/zuul.d/system-config-run.yaml +++ b/zuul.d/system-config-run.yaml @@ -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