release: consume .gitcookies from secret file

Update `gerrit-release.sh` to consume `.gitcookies` from the location
defined in `$GITCOOKIES` instead of assuming it is mounted at
`$HOME/.gitcookies`.

Previously, the file had to be manually mounted as a Docker volume,
which is incompatible with a fully automated release pipeline. With
this change, `.gitcookies` can be provided securely through Jenkins
vault as a secret file, making the release process non-interactive
and more automation-friendly.

Change-Id: I2a4ee480f25015b6df40c3dc6c159f144da11946
1 file changed
tree: 04b5254fb486f9440379b316e7afbbc49f715014
  1. jenkins/
  2. jenkins-docker/
  3. jenkins-internal/
  4. vars/
  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 --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/