Simplify the execution of the release container

Make gerrit-release.sh the default Docker container entrypoint
and adjust the 'run' as the default target for using the Makefile
to perform a Gerrit release.

Simplify the life of the release manager by allowing to trigger
a release with the following simple command:

make BRANCH=<stable branch> RELEASE=<release number> SNAPSHOT=<snapshot version>

Example:
  make BRANCH=stable-3.3 RELEASE=3.3.0 SNAPSHOT=3.3.1-SNAPSHOT

Git config is automatically set (if mounted externally), using the
user's .gitconfig as a template. Credentials are asked once and then
kept in memory for the whole release process session.

Non relevant Makefile targets are removed for keeping it simple and more
focused.

Bug: Issue 13577
Change-Id: Ib13ea7fb3602ade5c50e8a0d504d698d5146a64c
3 files changed
tree: df8fd76250e8653a21c2cf5bcf7e1111ebc11a0f
  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/