SCM module: Add support for multiple Git remotes.

Configuring multiple Git remotes is necessary to allow Jenkins to
merge commits from a remote branch into a local branch. Note that
this is not the same as specifying multiple SCMs which are cloned
into separate directories.

Change-Id: Ifef2da85fa22a979570d4ea2b6f30d4bd37da116
Allow custom settings configs for maven projects

Allow custom settings & global-settings config files to be configured
for maven projects.

In addition, the previously defined empty nodes for these configurations
were misnamed and this corrects that as well.

This change also switches to using an included test as an example.

Change-Id: I9f832f498e358268b3896ead3a78462e408bdd9d
Signed-off-by: Andrew Grimberg <grimbeaj@gmail.com>
Zuul parameter ZUUL_URL

Zuul 2.0 passes to jobs an additional parameter ZUUL_URL which instructs
workers from where to clone repositories.

This is NOT the same as the zuul-url defined by Jenkins Job Builder
which is the notification endpoint set on the jobs and is unrelated.

Change-Id: I4924a5b7ae99571efd70eeb188ddd3d821a4c61b
README.rst: Add links

Change-Id: Ia784781c9142f7a9deaeef812c6c95a936342f3a
Add support for multiple Gerrit servers in Gerrit trigger

Since version 2.11.0 the Gerrit Trigger Plugin can be configured
to trigger on more than one server.

Change-Id: I2082c5cfd14cd2494e2a7192beeb4909552cb7f6
Added support for Exclusion plugin

This plugin allows the specification of critical blocks for builders.
Once a set of builders is "wrapped" by a critical block start/critical
block end pair, any resources (string) specified in the exclusion build
wrapper will cause any jobs with those same resources to block and allow
only one of those builds to proceed at a time.

Change-Id: I0bf4ab003709917aa7fe6ad57b31200f466658da
add timeout-var option to the timeout module

jenkins build-timeout plugin version 1.13 has a new option[1] to expose the
timeout value via an environment variable.  Adding this option to the
equivalent jjb module.  Also created tests for the examples.

[1] https://github.com/jenkinsci/build-timeout-plugin/pull/22

Partial-Bug: #1287883
Change-Id: Ia0d6570e9aae55ceadf076716fc8ad7688ff6214
Merge "README.rst: Add links"
Merge "SCM module: Add support for multiple Git remotes."
Merge "Add support for multiple Gerrit servers in Gerrit trigger"
Merge "Added support for Exclusion plugin"
Merge "add timeout-var option to the timeout module"
Update authorship information

It's been quite some time since the author of the entire package
has been HP. Update the setup metadata to reflect this.

Change-Id: I239246eb1ac0ca659d1a118a0e009ab224bc6758
Catch EPIPE exception and return

Otherwise you get a traceback if you pipe `jenkins-jobs` to the UNIX
`head` command.

Change-Id: If83fd5b9f4aacd031e9ab0c35d61cc6d57542be9
add support for python builder

Change-Id: I0b1711c04435287bb851a72df25ebba10c891831
add tests for shell builder

Change-Id: I37350e7e813db173e033bd4131e62be77ab9753a
Add some more Trove classifiers

Change-Id: I803813de2980f8ca484710fecc1c6674b7497206
Merge "Update authorship information"
Merge "Add some more Trove classifiers"
Merge "add tests for shell builder"