summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDane Foster <dene@slush.ca>2018-12-13 11:19:50 +1300
committerDane Foster <dene@slush.ca>2018-12-13 11:21:19 +1300
commit774dd59f1ee4b090b295182084fa8b80554cb65e (patch)
treec400397bce655dd96c31d50e38b81c51cc19596b
parent02e85408f027f831ef00cb812ea66ddcdd226170 (diff)
downloadpython-jenkins-job-builder-774dd59f1ee4b090b295182084fa8b80554cb65e.tar.gz
python-jenkins-job-builder-774dd59f1ee4b090b295182084fa8b80554cb65e.tar.xz
python-jenkins-job-builder-774dd59f1ee4b090b295182084fa8b80554cb65e.zip
adds vault unlocking parameter to ansible builder
This commit adds a parameter to the ansible builder, vault-credentials-id. This maps to the element <vaultCredentialsId> in the resulting job definition, and has been tested against the Jenkins Ansible plugin v1.0. Change-Id: I40cfd9225923b29c9d2714a60279f1c88f6cb88c
-rw-r--r--jenkins_jobs/modules/builders.py4
-rw-r--r--tests/builders/fixtures/ansible-playbook001.xml1
-rw-r--r--tests/builders/fixtures/ansible-playbook002.xml1
-rw-r--r--tests/builders/fixtures/ansible-playbook002.yaml1
-rw-r--r--tests/builders/fixtures/ansible-playbook003.xml1
5 files changed, 8 insertions, 0 deletions
diff --git a/jenkins_jobs/modules/builders.py b/jenkins_jobs/modules/builders.py
index 7e532ae4..01cdd437 100644
--- a/jenkins_jobs/modules/builders.py
+++ b/jenkins_jobs/modules/builders.py
@@ -4337,6 +4337,8 @@ def ansible_playbook(parser, xml_parent, data):
:arg int workers: Specify number of parallel processes to use (default 5)
:arg str credentials-id: The ID of credentials for the SSH connections.
Only private key authentication is supported (default '')
+ :arg str vault-credentials-id: The ID of credentials for the vault
+ decryption (default '')
:arg bool sudo: Run operations with sudo. It works only when the remote
user is sudoer with nopasswd option (default false)
:arg str sudo-user: Desired sudo user. "root" is used when this field is
@@ -4416,6 +4418,8 @@ def ansible_playbook(parser, xml_parent, data):
'task-to-start-at', '')
XML.SubElement(plugin, 'credentialsId').text = data.get(
'credentials-id', '')
+ XML.SubElement(plugin, 'vaultCredentialsId').text = data.get(
+ 'vault-credentials-id', '')
if data.get('sudo', False):
XML.SubElement(plugin, 'sudo').text = 'true'
XML.SubElement(plugin, 'sudoUser').text = data.get('sudo-user', '')
diff --git a/tests/builders/fixtures/ansible-playbook001.xml b/tests/builders/fixtures/ansible-playbook001.xml
index 4880b518..662321b3 100644
--- a/tests/builders/fixtures/ansible-playbook001.xml
+++ b/tests/builders/fixtures/ansible-playbook001.xml
@@ -11,6 +11,7 @@
<skippedTags/>
<startAtTask/>
<credentialsId/>
+ <vaultCredentialsId/>
<sudo>false</sudo>
<forks>5</forks>
<unbufferedOutput>true</unbufferedOutput>
diff --git a/tests/builders/fixtures/ansible-playbook002.xml b/tests/builders/fixtures/ansible-playbook002.xml
index 680f6d5c..21c1ae0b 100644
--- a/tests/builders/fixtures/ansible-playbook002.xml
+++ b/tests/builders/fixtures/ansible-playbook002.xml
@@ -15,6 +15,7 @@ machine02.example.com
<skippedTags>ovirt</skippedTags>
<startAtTask>Deploy application</startAtTask>
<credentialsId>0891c950-487b-4749-aa69-d87425e14459</credentialsId>
+ <vaultCredentialsId>0421b950-487b-4749-aa69-d87425e14459</vaultCredentialsId>
<sudo>true</sudo>
<sudoUser>cloud-user</sudoUser>
<forks>2</forks>
diff --git a/tests/builders/fixtures/ansible-playbook002.yaml b/tests/builders/fixtures/ansible-playbook002.yaml
index 28ec5f44..db63b0ca 100644
--- a/tests/builders/fixtures/ansible-playbook002.yaml
+++ b/tests/builders/fixtures/ansible-playbook002.yaml
@@ -14,6 +14,7 @@ builders:
task-to-start-at: "Deploy application"
workers: 2
credentials-id: "0891c950-487b-4749-aa69-d87425e14459"
+ vault-credentials-id: "0421b950-487b-4749-aa69-d87425e14459"
sudo: true
sudo-user: "cloud-user"
unbuffered-output: false
diff --git a/tests/builders/fixtures/ansible-playbook003.xml b/tests/builders/fixtures/ansible-playbook003.xml
index eecfc273..31474925 100644
--- a/tests/builders/fixtures/ansible-playbook003.xml
+++ b/tests/builders/fixtures/ansible-playbook003.xml
@@ -9,6 +9,7 @@
<skippedTags/>
<startAtTask/>
<credentialsId/>
+ <vaultCredentialsId/>
<sudo>false</sudo>
<forks>5</forks>
<unbufferedOutput>true</unbufferedOutput>