make job creation consistent

Defining a project (in yaml) without setting any other parameters should
generate a basic jenkins job (in xml).  While this works for freestyle jobs,
jjb will throw an error for maven and flow projects.  The behavior should be
consistent across all types of projects.  This patch just makes it so
that the behavior is consistent.

Change-Id: If7b749dae7631e8714a9416dfbd82d2443c0302c
tests: Allow to test project parameters

So far it wasn't possible to test the prameters of the
project itself. While If7b749dae7631e8714a9416dfbd82d2443c0302c
already made the job creation consistent this goes one step further
and creates the root_xml using the project's root_xml method.

Change-Id: Ieba4203d3d23ad68df5a1246e90ea8c03ddd54d4
project_maven: Don't require artifact-id and group-id

Jenkins will determine the values from the pom automatically so there's
no need to require them.

Change-Id: Ic1c9c26a05e335fd78a92fe4316ecc88b3f209b9
Add support for credentials-id in git repositories.

Original change by Soren Hansen <Soren.Hansen@ril.com>

Change-Id: I2ad6d5b7d8a5cc89596c41463dc7906780b61515
Add tests for YamlParser and patch 2.6 minidom

Test full build job XML produced by the YamlParser object which exposed
differences in how the XML was being written on python 2.6 versus newer
versions of python.

Differences were whitespace only, but made testing and validating the
xml outputted across multiple versions of python difficult.

Code now patches the python 2.6 writexml method on the Element class in
the xml.dom.minidom module, with a version of the method taken from
python 2.7.5.

Removed the now obsolete regex that was reformatting the output on
python 2.6.

Change-Id: I26c100b6adfbcb9b197bb06cd162855adaaf24c5
Merge "make job creation consistent"
Merge "tests: Allow to test project parameters"
Merge "project_maven: Don't require artifact-id and group-id"
Merge "Add support for credentials-id in git repositories."
Merge "Add tests for YamlParser and patch 2.6 minidom"