commit | 7a21f6a62324b34e8891c88a13cf52653b8e6709 | [log] [tgz] |
---|---|---|
author | Luca Milanesio <luca.milanesio@gmail.com> | Wed Apr 01 22:53:33 2020 +0100 |
committer | Luca Milanesio <luca.milanesio@gmail.com> | Mon Apr 06 09:36:10 2020 +0000 |
tree | ad9d366913d064482784af32c31f08db43432577 | |
parent | ea284be0932b318dc59d6b6b3522d935731be89d [diff] |
Use remote Bazel cache on https://gerrit-ci.gerritforge.com/cache Use Bazel cache across different worker nodes: by using the same global Bazel cache allow reusing artifacts from the previous builds and avoid running tests if the dependent code hasn't changed. Using remote Bazel cache also avoids re-building if nothing changed, as the build artifacts would be fetched from the remote Bazel cache thanks to cache hits. In fact, the 'bazel build :release :api' would be a no-op if only some files were changed that do not contribute to the final artifact (say contrib directory). How to test the Bazel cache locally: $ bazelisk build \ --remote_cache=https://gerrit-ci.gerritforge.com/cache \ --noremote_upload_local_results \ gerrit Change-Id: I261d086bb5082969f422ff8a79ce6ec3fed7eb9a
This project uses Jenkins Jobs Builder [1] to generate jobs from yaml descriptor files.
To add new jobs reuse existing templates, defaults etc. as much as possible. E.g. adding a job to build an additional branch of a project may be as easy as adding the name of the branch to an existing project.
To ensure well readable yaml-files, use yamllint [2] to lint the yaml-files. Yamllint can be downloaded using Python Pip:
pip3 install yamllint
To run the linter, execute this command from the project's root directory:
yamllint -c yamllint-config.yaml jenkins/**/*.yaml
Yamllint will not fix detected issues itself.
[1] https://docs.openstack.org/infra/jenkins-job-builder/index.html [2] https://pypi.org/project/yamllint/