Fail if specified set of defaults is not found.

Change-Id: I1c764d5585249b28bd25f775abee2734e96b1640
Patch writexml for non standard XML DOM implementations

PyXML will replace the default DOM implementation and as a result, it
will reintroduce the broken writexml method that was present with python
versions before 2.7

Change-Id: I8847c344df2f7b2d76291a24cdb8e1a436ac87ec
Support variable-specific substitutions in templates.

Change-Id: I6af84f48eaa4ee44c8d8babddd8d10a1e1095101
update URL references to project.

github.com/openstack-ci was moved to github.com/openstack-infra
homepage references should point to git.o.o/cgit/openstack-infra

This change updates the above references accordingly.

Change-Id: I4d3591f228b10de050a129ae7af99485f50edab5
scms: MultiSCM is generated for scms hidden in macro

This patch fixes problem with generating MultiSCM in case that scms are
encapsulated in macro.
This patch includes simple tests to cover if-branches for this change.

Example:

- scm:
  name: xxx
  scm:
    - git: ...

- scm:
  name: yyy
  scm:
    - git: ...

- scm:
  name: xxx-and-yyy
  scm:
    - xxx
    - yyy

- job:
  name: my-job
  scm:
    - xxx-and-yyy

Change-Id: If3e7b3d19e51545a5623ee060fb7673a7a989233
Signed-off-by: Lukas Bednar <lbednar@redhat.com>
Closes-bug: #1285515
Add tox "coverage" target

Change-Id: I577d62e016a550ea30671837a0a426165984e982
Merge "Fail if specified set of defaults is not found."
Merge "Add tox "coverage" target"
reference tests as examples

Remove samples and reference the tests as examples instead.

We don't need these samples for two reasons:
1. It is already duplicated in either JJB tests or documentation.
2. We don't test these samples so they may become outdated (some already have).

Change-Id: If1ba6cc8a675091e740fa254951bb8fcbcee6903
authorization property: add extended read support

This authorization requires the extended read permission plugin:
https://wiki.jenkins-ci.org/display/JENKINS/Extended+Read+Permission+Plugin

Include test for the authorization properties.

Change-Id: I9364524398f4e3f0d6ccccd88d5046e7504e2123
Signed-off-by: Fathi Boudra <fathi.boudra@linaro.org>
Fixed referenced before assignment in zuul module

It was using a non-defined url variable and failed to me when running a
simple jenkins-jobs test -o ../outdir .

Change-Id: I56e6376de4972ea0f64bd8c81d6eb6d8f7f6d497
Signed-off-by: David Caro <dcaroest@redhat.com>
Merge "update URL references to project."
Merge "authorization property: add extended read support"
Merge "reference tests as examples"
ssh publisher: add always-publish-from-master support

Allow to SSH from master, instead of hardcoding to false.
It's particularly useful when the SSH credential are only
stored on the master. Default is kept to False.

Change-Id: I365cad043d30b6b290828a24635322c7f5afc35e
Signed-off-by: Fathi Boudra <fathi.boudra@linaro.org>
removed job configuration duplication in docs

The same job definition and examples were in both general.rst and
configuration.rst.  Moved the contents of general to configuration.

Change-Id: Iefdf1b6ac3b9679a8af4451710442bf58054d790
matrix project: add support for dynamic axis

This axis requires the dynamic axis plugin:
https://wiki.jenkins-ci.org/display/JENKINS/DynamicAxis+Plugin

All the dynamic axis plugin settings are in the core project:

<matrix-project>
  <axes>
    <ca.silvermaplesolutions.jenkins.plugins.daxis.DynamicAxis>
      <name>config</name>
      <values>
        <string>config_list</string>
      </values>
      <varName>config_list</varName>
      <axisValues>
        <string>default</string>
      </axisValues>
    </ca.silvermaplesolutions.jenkins.plugins.daxis.DynamicAxis>
  </axes>

The plugin sets 2 values: axis name and variable name.
The axisValue element is hardcoded to 'default' in the plugin, so we do
the same in Jenkins job builder.

The matrix project supports multiple axes configuration, including dynamic
axis.

Tests added for:
 * dynamic axis (by itself)
 * multiple axes (dynamic and user-defined axes)

Tested on Jenkins LTS (1.554.2) with both the plugin installed and not
installed. The plugin is properly ignored in the latter case.

Change-Id: I36310bc512fd873fec4bd5f42937689fd178536e
Signed-off-by: Fathi Boudra <fathi.boudra@linaro.org>
remove misleading jjb example

Change I059f38d0aa8a8947aaac75e0ddb34d392063ece3 added support for
passing parameters to jobs in groups but not for variable substitution
on those parameters. Substitution on job list parameters would
be a new feature. This change removes a misleading parameter subsitution
example.

Partial-bug: #1298568
Change-Id: I18e28bb622f0473f049963ce6dcf6c4efd11dc2c
re-arrange docs for clarity

The info on using list and dict as parameters seemed a little too advanced
to be in the description of 'templates'.  This change moves this example into
a newly created 'advanced' configuration section.

Change-Id: I98b80233c45ac721819360743dcae5e82c63ecbf
Merge "matrix project: add support for dynamic axis"