diff options
author | Zuul <zuul@review.opendev.org> | 2020-03-04 02:16:25 +0000 |
---|---|---|
committer | Gerrit Code Review <review@openstack.org> | 2020-03-04 02:16:25 +0000 |
commit | 9b79893b04da13375a7bec8b9388892d3383cb55 (patch) | |
tree | 91a8dcbed9a1e15f6c2d6842419ac74deac075a4 | |
parent | e273b68325217a84225f8e979d5d77e65df2f626 (diff) | |
parent | 45f24585841aff5529d9928b31f26afe989b5ed0 (diff) | |
download | python-jenkins-job-builder-9b79893b04da13375a7bec8b9388892d3383cb55.tar.gz python-jenkins-job-builder-9b79893b04da13375a7bec8b9388892d3383cb55.tar.xz python-jenkins-job-builder-9b79893b04da13375a7bec8b9388892d3383cb55.zip |
Merge "Add support for become in ansible playbook"
-rw-r--r-- | jenkins_jobs/modules/builders.py | 5 | ||||
-rw-r--r-- | tests/builders/fixtures/ansible-playbook001.xml | 1 | ||||
-rw-r--r-- | tests/builders/fixtures/ansible-playbook002.xml | 1 | ||||
-rw-r--r-- | tests/builders/fixtures/ansible-playbook003.xml | 1 | ||||
-rw-r--r-- | tests/builders/fixtures/ansible-playbook004.xml | 24 | ||||
-rw-r--r-- | tests/builders/fixtures/ansible-playbook004.yaml | 7 |
6 files changed, 39 insertions, 0 deletions
diff --git a/jenkins_jobs/modules/builders.py b/jenkins_jobs/modules/builders.py index 71765f85..248ad90d 100644 --- a/jenkins_jobs/modules/builders.py +++ b/jenkins_jobs/modules/builders.py @@ -4516,6 +4516,11 @@ def ansible_playbook(parser, xml_parent, data): XML.SubElement(plugin, "sudoUser").text = data.get("sudo-user", "") else: XML.SubElement(plugin, "sudo").text = "false" + if data.get("become", False): + XML.SubElement(plugin, "become").text = "true" + XML.SubElement(plugin, "becomeUser").text = data.get("become-user", "") + else: + XML.SubElement(plugin, "become").text = "false" XML.SubElement(plugin, "forks").text = str(data.get("workers", "5")) XML.SubElement(plugin, "unbufferedOutput").text = str( data.get("unbuffered-output", True) diff --git a/tests/builders/fixtures/ansible-playbook001.xml b/tests/builders/fixtures/ansible-playbook001.xml index 662321b3..d19d6068 100644 --- a/tests/builders/fixtures/ansible-playbook001.xml +++ b/tests/builders/fixtures/ansible-playbook001.xml @@ -13,6 +13,7 @@ <credentialsId/> <vaultCredentialsId/> <sudo>false</sudo> + <become>false</become> <forks>5</forks> <unbufferedOutput>true</unbufferedOutput> <colorizedOutput>false</colorizedOutput> diff --git a/tests/builders/fixtures/ansible-playbook002.xml b/tests/builders/fixtures/ansible-playbook002.xml index 21c1ae0b..afe13676 100644 --- a/tests/builders/fixtures/ansible-playbook002.xml +++ b/tests/builders/fixtures/ansible-playbook002.xml @@ -18,6 +18,7 @@ machine02.example.com <vaultCredentialsId>0421b950-487b-4749-aa69-d87425e14459</vaultCredentialsId> <sudo>true</sudo> <sudoUser>cloud-user</sudoUser> + <become>false</become> <forks>2</forks> <unbufferedOutput>false</unbufferedOutput> <colorizedOutput>true</colorizedOutput> diff --git a/tests/builders/fixtures/ansible-playbook003.xml b/tests/builders/fixtures/ansible-playbook003.xml index 31474925..8e15e776 100644 --- a/tests/builders/fixtures/ansible-playbook003.xml +++ b/tests/builders/fixtures/ansible-playbook003.xml @@ -11,6 +11,7 @@ <credentialsId/> <vaultCredentialsId/> <sudo>false</sudo> + <become>false</become> <forks>5</forks> <unbufferedOutput>true</unbufferedOutput> <colorizedOutput>false</colorizedOutput> diff --git a/tests/builders/fixtures/ansible-playbook004.xml b/tests/builders/fixtures/ansible-playbook004.xml new file mode 100644 index 00000000..bc4018bf --- /dev/null +++ b/tests/builders/fixtures/ansible-playbook004.xml @@ -0,0 +1,24 @@ +<?xml version="1.0" encoding="utf-8"?> +<project> + <builders> + <org.jenkinsci.plugins.ansible.AnsiblePlaybookBuilder> + <playbook>path/to/playbook.yml</playbook> + <inventory class="org.jenkinsci.plugins.ansible.InventoryDoNotSpecify"/> + <limit/> + <tags/> + <skippedTags/> + <startAtTask/> + <credentialsId/> + <vaultCredentialsId/> + <sudo>false</sudo> + <become>true</become> + <becomeUser>cloud-user</becomeUser> + <forks>5</forks> + <unbufferedOutput>true</unbufferedOutput> + <colorizedOutput>false</colorizedOutput> + <hostKeyChecking>false</hostKeyChecking> + <additionalParameters/> + <copyCredentialsInWorkspace>false</copyCredentialsInWorkspace> + </org.jenkinsci.plugins.ansible.AnsiblePlaybookBuilder> + </builders> +</project> diff --git a/tests/builders/fixtures/ansible-playbook004.yaml b/tests/builders/fixtures/ansible-playbook004.yaml new file mode 100644 index 00000000..528c839a --- /dev/null +++ b/tests/builders/fixtures/ansible-playbook004.yaml @@ -0,0 +1,7 @@ +--- +builders: + - ansible-playbook: + playbook: "path/to/playbook.yml" + inventory-type: "do-not-specify" + become: "yes" + become-user: "cloud-user" |