Ian Wienand 1858f15a8a gerrit: move plugins to common code
The "additional_plugins" variable is so different builds gerrit can
specify additional plugins specific to their version to install into
the base image.

Since we've moved to only building 3.2 and master images, a bunch of
plugins that used to be additional (because they weren't 2.XX era) are
now common.  Move them into the common plugin code in the playbook,
and leave the only one different for master, the "checks" plugin, as
separate.

Change-Id: I8966ed7b5436fbe012486dccc1028bc8cb1cf9e4
2021-01-18 07:58:23 -08:00

77 lines
2.4 KiB
YAML

- hosts: all
roles:
- role: ensure-java
java_version: 11
- role: ensure-nodejs
node_version: 10
- ensure-bazelisk
tasks:
- name: Install essential build packages
become: true
package:
name:
- build-essential
- zip
- unzip
state: present
- 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
- javamelody
- plugin-manager
- replication
- reviewnotes
- singleusergroup
- webhooks
# 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
- javamelody
- name: Configure javamelody external plugin deps
file:
state: link
force: yes
src: javamelody/external_plugin_deps.bzl
path: /home/zuul/src/gerrit.googlesource.com/gerrit/plugins/external_plugin_deps.bzl
- name: Move build script into main gerrit source dir
command: "mv docker/gerrit/bazel/build-gerrit.sh /home/zuul/src/gerrit.googlesource.com/gerrit"
args:
chdir: /home/zuul/src/opendev.org/opendev/system-config