Move credentials-id at SCM/origin level

Even though Jenkins Job Builder supports the credentials-id
at both SCM and Source level, it would ignore the ones at SCM
level if there is a "sources" array defined.

Unfortunately that isn't detected by the Jenkins Job Builder
at all and just results in the configuration of SCM sources
without any credentials-id, which would result in a broken
job definition.

Move all the credentials-id definition at source level, when
present, so that the credentials are set as expected in all
jobs definition.

TODO: Jenkins job builder needs fixing in both documentation
and implementation.

Change-Id: Ia10bcb4a6a8bdd5962450669ac567c7d1625b884
11 files changed
tree: 55932cbeb884615b31f38e98337824043f66aa38
  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/