system-config/playbooks/zuul/gerrit/repos.yaml
Monty Taylor 696b3671fb Symlink python3 to python for gerrit image build
Gerrit's bazel rules are looking for python which doesn't exist on our
images. Add a python symlink to python3 until
https://gerrit-review.googlesource.com/c/gerrit/+/298903 is in a release,
which seems likely to be 3.5.

Change-Id: I1c15cceac1c9bbf435ed23bed7c1e3fe868f05ff
2021-05-18 14:47:10 -05:00

83 lines
2.5 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
# 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
- javamelody
- 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
- 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