diff options
author | Azat Khuzhin <a3at.mail@gmail.com> | 2017-03-31 20:44:35 +0300 |
---|---|---|
committer | Azat Khuzhin <a3at.mail@gmail.com> | 2017-04-04 14:00:16 +0300 |
commit | 9e51beb8044367fe46ca9636a715ebcb683703c5 (patch) | |
tree | 55835cb3ec7edb4cb212f698f9ffdf021bdc912e | |
parent | 4f77324feae72a0663441a6b47591409b4fb0396 (diff) | |
download | python-jenkins-job-builder-9e51beb8044367fe46ca9636a715ebcb683703c5.tar.gz python-jenkins-job-builder-9e51beb8044367fe46ca9636a715ebcb683703c5.tar.xz python-jenkins-job-builder-9e51beb8044367fe46ca9636a715ebcb683703c5.zip |
scm: introduce parent-credentials for git submodules
Jenkins Git plugin does not use your configured credentials for cloning
submodules, but you can told it to use credentials from parent
repository, by checking "Use credentials from default remote of parent
repository", and this "parent-credentials" will set that option.
So without this option jenkins git plugin will not be able to clone
submodules, if they are not public available.
The default value is "false", like in jenkins git plugin.
See-also: https://issues.jenkins-ci.org/browse/JENKINS-20941
Change-Id: I1cfb3f45bb082f538eff1a9e64a03be27f759a5f
Signed-off-by: Azat Khuzhin <a3at.mail@gmail.com>
-rw-r--r-- | jenkins_jobs/modules/scm.py | 4 | ||||
-rw-r--r-- | tests/macros/fixtures/scm/obj-in-scm-macro001.xml | 1 | ||||
-rw-r--r-- | tests/scm/fixtures/git-submodule01.xml | 1 | ||||
-rw-r--r-- | tests/scm/fixtures/git-submodule01.yaml | 1 |
4 files changed, 7 insertions, 0 deletions
diff --git a/jenkins_jobs/modules/scm.py b/jenkins_jobs/modules/scm.py index d5dbe0c2..dbbfc8e9 100644 --- a/jenkins_jobs/modules/scm.py +++ b/jenkins_jobs/modules/scm.py @@ -181,6 +181,8 @@ def git(registry, xml_parent, data): * **tracking** (`bool`) - Retrieve the tip of the configured branch in .gitmodules (Uses '\-\-remote' option which requires git>=1.8.2) + * **parent-credentials** (`bool`) - Use credentials from default + remote of parent repository (default false). * **reference-repo** (`str`) - Path of the reference repo to use during clone (optional) * **timeout** (`int`) - Specify a timeout (in minutes) for @@ -396,6 +398,8 @@ def git(registry, xml_parent, data): data['submodule'].get('recursive', False)).lower() XML.SubElement(ext, 'trackingSubmodules').text = str( data['submodule'].get('tracking', False)).lower() + XML.SubElement(ext, 'parentCredentials').text = str( + data['submodule'].get('parent-credentials', False)).lower() XML.SubElement(ext, 'reference').text = str( data['submodule'].get('reference-repo', '')) XML.SubElement(ext, 'timeout').text = str( diff --git a/tests/macros/fixtures/scm/obj-in-scm-macro001.xml b/tests/macros/fixtures/scm/obj-in-scm-macro001.xml index 0dd63a6b..e382ff61 100644 --- a/tests/macros/fixtures/scm/obj-in-scm-macro001.xml +++ b/tests/macros/fixtures/scm/obj-in-scm-macro001.xml @@ -42,6 +42,7 @@ <disableSubmodules>false</disableSubmodules> <recursiveSubmodules>true</recursiveSubmodules> <trackingSubmodules>false</trackingSubmodules> + <parentCredentials>false</parentCredentials> <reference/> <timeout>10</timeout> </hudson.plugins.git.extensions.impl.SubmoduleOption> diff --git a/tests/scm/fixtures/git-submodule01.xml b/tests/scm/fixtures/git-submodule01.xml index 9aac9a46..3d36a714 100644 --- a/tests/scm/fixtures/git-submodule01.xml +++ b/tests/scm/fixtures/git-submodule01.xml @@ -26,6 +26,7 @@ <disableSubmodules>true</disableSubmodules> <recursiveSubmodules>true</recursiveSubmodules> <trackingSubmodules>true</trackingSubmodules> + <parentCredentials>true</parentCredentials> <reference>/jenkins_home/.gitcache/submodules</reference> <timeout>15</timeout> </hudson.plugins.git.extensions.impl.SubmoduleOption> diff --git a/tests/scm/fixtures/git-submodule01.yaml b/tests/scm/fixtures/git-submodule01.yaml index 014518d0..dc2ab720 100644 --- a/tests/scm/fixtures/git-submodule01.yaml +++ b/tests/scm/fixtures/git-submodule01.yaml @@ -5,5 +5,6 @@ scm: disable: true recursive: true tracking: true + parent-credentials: true reference-repo: /jenkins_home/.gitcache/submodules timeout: 15 |