Raise exceptions when no entrypoint, macro or template found

When generating XML and no component is found for the given yaml entry
whether it is a JJB module, macro or job template, raise an exception
instead of silently continuing by not generating XML and requiring the
user to check the results.

Change-Id: Icd4b1fae123c8bbb4d8af7aa14522251cd9cf8d5
missing parameter error are no more meaningfull

When ever we attempt to format a string and are missing some parameter,
we end up with:

    <stacktrace>
    KeyError: 'ext-name'

Which is not that helpful.  This patch dump the string being formatted
and the list of parameters provided to deep_format().  Example output:

    JenkinsJobsException: ext-name parameter missing to format ext/{ext-name}
    Given: {'jobs': ['{name}-ruby1.9.3lint', '{name}-browsertests'],
    'name': 'mwext-UniversalLanguageSelector'}

Which in most occasion should be self explaining.

Note the KeyError is reraised as a generic Exception since the format is
meant for human and is no more representing the key.

Change-Id: I46fced45c4586fca8ea999766327b7b4b2dc6505
Allow use template variables in dictionnary key

This patch allows to use template variables in dictionnary key.

This fix the usage of template variables in JClouds template instance name.

Fixes bug #1239688

Change-Id: I395e6dcfa008e770d72e4e671ea85085ef6cffe5
Merge "missing parameter error are no more meaningfull"
Make --delete-old more robust

Watch for parse errors when checking if a job is managed
by jjb.

Log the jobs that are ignored for removal.

Change-Id: I11207bdaf16b5645c37785bd31f2feb9d1bcae11
Added globbed parameters to the job specification

Now you can specify a globbed parameter when updating or deleting a job,
it will parse the yaml files and select those jobs that match to be
updated/deleted

For example:
  jenkins-jobs --config ~/jenkins.ini update myjobs/ \*only_those\*

Will only update the jobs that have 'only_those' on their name.

For the delete subcommand the option '-p' lets you specify the path
where to load the job list from, so you can use globs for the jobs in
that list (it does not allow you to use globs with non-managed jobs)

Change-Id: I5bb1074845fb143c7c3120c138a6b138d3548305
Signed-off-by: David Caro <dcaroest@redhat.com>
Jenkins Ownership Plugin

Plugin provides explicit ownership for jobs and slave nodes.
https://wiki.jenkins-ci.org/display/JENKINS/Ownership+Plugin

Change-Id: I6c47fb43f812c1ef15daecd53a52777dbd04805b
publishers: correct XML element for boosttest xunit

The xUnit publisher (introduced by 2736e149) add a copy paste issue that
caused the 'boostest' type to use an XML element named
AUnitJunitHudsonTestType instead of BoostTestJunitHudsonTestType.

Closes-Bug: 1239121
Change-Id: I612075f5327025136d161dd60653a4f8edabb772
Adding support for the Build Result Trigger plugin

This changes adds the build result trigger plugin to trigger
a build when downstream jobs have a specific status

Change-Id: I00a0075ba625bc711f75a41e5202f93fbfdd0d8e
Merge "Allow use template variables in dictionnary key"
Merge "publishers: correct XML element for boosttest xunit"
Inject passwords to the build as environment variables support added

Change-Id: I818783ac96a42d09083f253a9cfe1ab838dc6212
Added default value of -1 for all logrotate attributes

You don't need to specify all logrotate explicitely as -1 if you don't want to manage them.
Jenkins will automatically populate them as -1 if you don't enter any value.

Change-Id: Id9ee223d94e2c43cd0a1c1f5547a25858873ed92
Merge "Make --delete-old more robust"
Jenkins Dynamic Parameter Plug-in support

This change adds support for 4 parameters provided by Jenkins Dynamic Parameter Plug-in:
  - dynamic choice parameter
  - dynamic choice parameter (scriptler)
  - dynamic parameter
  - dynamic parameter (scriptler)

Change-Id: I77440af5bc089108b87ec6bc3c4db206c2600c00
Merge "Added globbed parameters to the job specification"
Merge "Jenkins Ownership Plugin"
Merge "Adding support for the Build Result Trigger plugin"
fix typo

Change-Id: Ie8d6e35094a1bd0c970c8122b0a76bca1fba4f7f
Fix indentation in example of Logrotate section

Change-Id: I893a4c8638fd35a90e1e3361a473212db115f22e