You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

65 lines
2.2 KiB

- hosts: all
tasks:
- name: Build gerrit
include_role:
name: bazelisk-build
vars:
zuul_work_dir: /home/zuul/src/gerrit.googlesource.com/gerrit
# NOTE(ianw): There doesn't seem to be a way to integrate
# polygerrit/javascript plugins into the standard "release"
# target; we add plugins as separate targets here
bazelisk_targets:
- release
- plugins/zuul-results-summary:zuul-results-summary
# Bazel makes "convenience symlinks" [1] starting with bazel-* to
# the actual build output. The problem is that we want to use the
# source tree as the context/build dir for our Docker container,
# and Docker refuses to follow symlinks for COPY commands; i.e. we
# can't copy stuff from the build output into the container.
# Therefore break the bazel-bin link and move to the top level so
# we can copy the built bits (jars, plugins, etc) into the
# container easily.
#
# [1] https://docs.bazel.build/versions/master/user-manual.html
- name: Make bazel-bin docker friendly
shell:
cmd: |
if [ ! -L bazel-bin ]; then
echo "bazel-bin not a symlink?"
exit 1
fi
target=$(readlink bazel-bin)
rm bazel-bin
mv $target bazel-bin
chdir: /home/zuul/src/gerrit.googlesource.com/gerrit
- name: Install static files to container build context
block:
- name: Ensure directories
file:
path: '/home/zuul/src/gerrit.googlesource.com/gerrit/{{ item }}'
state: directory
loop:
- plugins
- static
- name: Copy static files
copy:
src: '{{ item }}'
dest: '/home/zuul/src/gerrit.googlesource.com/gerrit/{{ item }}'
loop:
- static/cla.html
- static/opendev-sm.png
- static/robots.txt
- static/system-cla.html
- static/usg-cla.html
- plugins/opendev-theme-plugin.js
- name: Build docker image
include_role:
name: build-docker-image
- hosts: localhost
roles:
- pause-buildset-registry