Merge branch 'remote-bb'

* remote-bb:
  Rename DOCKER_HOST to REMOTE_DOCKER_HOST for configuring remote URL
  Run pipeline on python3 node
  Update JGit master build URL
  Remove obsolete GHS project
  Enable all remaining jobs on remote-bb branch
  Remove gerrit-ci-scripts-docker
  Use volatile user/password for JJB configuration
  Do not expose access to injected variables
  Stop building modules continuously
  Jenkins docker cloud: add bazel-debian label for plugins build
  Enable all plugins builds on remote-bb branch
  Do not execute builds on Jenkins server
  Jenkins docker server: Add X.509 SSL termination to haproxy
  Jenkins docker server: use printf instead of echo -e
  Split Jenkins jobs to internally and externally accessible
  Allow login to Jenkins
  Close Jenkins UI to anonymous users
  Add syntonyze to list of Administrators
  Extend RBE BB in project gerrit from stable-3.7 to stable-3.9
  Restrict access to Jenkins CI GUI to maintainers
  Upgrade cloudbees-folder to 6.815.v0dd5a_cb_40e0e
  Upgrade script-security to 1269.v639888f5e366
  Upgrade gerrit-code-review to v0.4.9
  Exclude non_stamped jar files from archiving
  Upgrade Jenkins LTS to v2.375.4
  Remove unused test_env which would invalidate Bazel cache
  Add remote cache for Gerrit branch builds
  Use UTF-8 encoding for the build output
  Add timestamps to the Gerrit verification job
  Restore git executables after docker-ce installation
  Remove Java 8, Gerrit v3.4 is EOL and not needed anymore
  Use BuildBuddy RBE also for the build of stable branches
  Use reference-repo when cloning Gerrit and its submodules
  Use common bazel-debian-* label for build nodes
  Set the number of jobs to be executed concurrently to 50
  Use official Maven distribution on Maven Central
  Remove the Code-Style validation on RBE BuildBuddy
  Fix typo in the Docker label for validation builds
  Restrict BuildBuddy validations to RBE only
  Reintroduce http_request plugin needed by our pipelines
  Bump gerrit-code-review plugin to 0.4.8
  Disable unneed jobs in BuildBuddy branch
  Restrict BuildBuddy RBE checks to changes less than one week old
  Fix the descriptions in the RBE checkers
  Add new checker for RBE BuildBuddy
  Set remote-bb branch in the gerrit-ci-scripts.xml config
  Set remote-bb branch for Global pipeline libraries
  Set branch remote-bb in gerrit-ci-scripts Jenkins job
  Produce API javadoc
  Use BuildBuddy RBE provider

Change-Id: I283262b5f08d098fe5d272f38c032566cc80fa94
tree: f0fa46d87a6feeb9f5aa9cb5b01bb7945549e94f
  1. jenkins/
  2. jenkins-docker/
  3. jenkins-internal/
  4. vars/
  5. worker/
  6. .gitignore
  7. Jenkinsfile
  8. README.md
  9. 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 --require-hashes 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/