system-config/playbooks/zuul/gerrit/repos.yaml
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

74 lines
2.3 KiB
YAML

- hosts: all
roles:
- role: ensure-java
java_version: 17
- role: ensure-nodejs
node_version: 18
- ensure-bazelisk
tasks:
- name: Install essential build packages
become: true
package:
name:
- build-essential
- zip
- unzip
state: present
# Until Gerrit 3.5 we need to work around scripts looking for bare
# python instead of python3.
# https://gerrit-review.googlesource.com/c/gerrit/+/298903
- name: Install python symlink
become: true
ansible.builtin.file:
src: /usr/bin/python3
dest: /usr/bin/python
state: link
- name: Move common plugin repos into gerrit tree
command: "mv -f {{ item }} ../gerrit/plugins"
args:
chdir: /home/zuul/src/gerrit.googlesource.com/plugins
loop:
- codemirror-editor
- commit-message-length-validator
- delete-project
- download-commands
- gitiles
- hooks
- its-base
- its-storyboard
- plugin-manager
- replication
- reviewnotes
- singleusergroup
- webhooks
- zuul-results-summary
# Some submodules don't have appropriate refs to checkout for specific
# gerrit branches. We address that by checking them out explicitly in
# submodules.yaml on branches that need it.
# The default zuul remote, file:///dev/null, doesn't work
# here because relative paths cause it to be
# file:///dev/plugins/download-commands, which isn't a thing. Removing
# the origin causes git to use relative local filesystem paths.
- name: Remove origin remote
command: "git remote rm origin"
args:
chdir: /home/zuul/src/gerrit.googlesource.com/gerrit
- name: Move additional plugin repos into gerrit tree
command: "mv -f {{ item }} ../gerrit/plugins"
args:
chdir: /home/zuul/src/gerrit.googlesource.com/plugins
loop: "{{ gerrit_additional_plugins | default([]) }}"
- name: Configure plugin bazel file
lineinfile:
path: /home/zuul/src/gerrit.googlesource.com/gerrit/tools/bzl/plugins.bzl
insertafter: "# Add custom core plugins here"
line: '"{{ item }}",'
loop:
- its-storyboard
- its-base