Bazel: Activate RBE configuration on GCP

Create dedicated checker "rbe" to build and test on GCP platform on
master branch only. This should significantly reduce build and test
time for CI verification.

Given that Docker tests (Elasticsearch) and git wire protocol v2
(requires very recent git-core version) cannot run on RBE environment,
exclude those tests in RBE mode and include only those tests in NoteDb
mode.

Also exlude targets to publish to local maven repository and generate
.classpath file fo Eclipse IDE in RBE mode.  That's not an problem,
because those targets are still executed in NoteDb mode.

Javadoc generation doesn't work on RBE. Add a TODO-comment for it and
build the api-skip-javadoc target instead and consider to fix it later.

Bug: Issue 13753
Change-Id: Ie14a093c38f48e97d386749e9f5801bd516d104e
5 files changed
tree: c8625d0837e4093d7887ff45e3b2fed656946ca3
  1. jenkins/
  2. jenkins-docker/
  3. vars/
  4. worker/
  5. .gitignore
  6. Jenkinsfile
  7. README.md
  8. yamllint-config.yaml
README.md

Gerrit CI scripts

Providing jobs

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/