diff options
author | tanhengyeow <E0032242@u.nus.edu> | 2018-08-31 22:56:16 +0800 |
---|---|---|
committer | tanhengyeow <E0032242@u.nus.edu> | 2018-08-31 22:56:55 +0800 |
commit | 2fba7e6058ff9c8e7c272bc3ea521ea77ac389f6 (patch) | |
tree | 248c5dee6e23b62f702e080bf52c3468819eb600 | |
parent | de4fb862f3469fc711e8adefcb2f2471427a3a84 (diff) | |
download | python-jenkins-job-builder-2fba7e6058ff9c8e7c272bc3ea521ea77ac389f6.tar.gz python-jenkins-job-builder-2fba7e6058ff9c8e7c272bc3ea521ea77ac389f6.tar.xz python-jenkins-job-builder-2fba7e6058ff9c8e7c272bc3ea521ea77ac389f6.zip |
github-pull-request: Utilize convert_mapping_to_xml
Change-Id: I8a5f3ade27d7aeba8054c814ad0dc2bf7993dd42
Signed-off-by: Tan Heng Yeow <E0032242@u.nus.edu>
6 files changed, 30 insertions, 32 deletions
diff --git a/jenkins_jobs/modules/triggers.py b/jenkins_jobs/modules/triggers.py index 34eff76e..1b83ba03 100644 --- a/jenkins_jobs/modules/triggers.py +++ b/jenkins_jobs/modules/triggers.py @@ -1023,11 +1023,21 @@ def github_pull_request(registry, xml_parent, data): """ ghprb = XML.SubElement(xml_parent, 'org.jenkinsci.plugins.ghprb.' 'GhprbTrigger') - XML.SubElement(ghprb, 'spec').text = data.get('cron', '') + mapping = [ + ('cron', 'spec', ''), + ('allow-whitelist-orgs-as-admins', + 'allowMembersOfWhitelistedOrgsAsAdmin', False), + ('cron', 'cron', ''), + ('trigger-phrase', 'triggerPhrase', ''), + ('skip-build-phrase', 'skipBuildPhrase', ''), + ('only-trigger-phrase', 'onlyTriggerPhrase', False), + ('github-hooks', 'useGitHubHooks', False), + ('permit-all', 'permitAll', False), + ('auto-close-on-fail', + 'autoCloseFailedPullRequests', False), + ] admin_string = "\n".join(data.get('admin-list', [])) XML.SubElement(ghprb, 'adminlist').text = admin_string - XML.SubElement(ghprb, 'allowMembersOfWhitelistedOrgsAsAdmin').text = str( - data.get('allow-whitelist-orgs-as-admins', False)).lower() white_string = "\n".join(data.get('white-list', [])) XML.SubElement(ghprb, 'whitelist').text = white_string org_string = "\n".join(data.get('org-list', [])) @@ -1036,7 +1046,6 @@ def github_pull_request(registry, xml_parent, data): XML.SubElement(ghprb, 'whiteListLabels').text = white_list_labels_string black_list_labels_string = "\n".join(data.get('black-list-labels', [])) XML.SubElement(ghprb, 'blackListLabels').text = black_list_labels_string - XML.SubElement(ghprb, 'cron').text = data.get('cron', '') excluded_regions_string = "\n".join(data.get('excluded-regions', [])) XML.SubElement(ghprb, 'excludedRegions').text = excluded_regions_string included_regions_string = "\n".join(data.get('included-regions', [])) @@ -1047,19 +1056,8 @@ def github_pull_request(registry, xml_parent, data): XML.SubElement(ghprb, 'buildDescTemplate').text = str( build_desc_template) - XML.SubElement(ghprb, 'triggerPhrase').text = \ - data.get('trigger-phrase', '') - XML.SubElement(ghprb, 'skipBuildPhrase').text = str( - data.get('skip-build-phrase', '')).lower() - XML.SubElement(ghprb, 'onlyTriggerPhrase').text = str( - data.get('only-trigger-phrase', False)).lower() - XML.SubElement(ghprb, 'useGitHubHooks').text = str( - data.get('github-hooks', False)).lower() - XML.SubElement(ghprb, 'permitAll').text = str( - data.get('permit-all', False)).lower() - XML.SubElement(ghprb, 'autoCloseFailedPullRequests').text = str( - data.get('auto-close-on-fail', False)).lower() - + helpers.convert_mapping_to_xml( + ghprb, data, mapping, fail_required=False) white_list_target_branches = data.get('white-list-target-branches', []) if white_list_target_branches: ghprb_wltb = XML.SubElement(ghprb, 'whiteListTargetBranches') diff --git a/tests/triggers/fixtures/github-pull-request-comments.xml b/tests/triggers/fixtures/github-pull-request-comments.xml index 76683abd..7b2c151e 100644 --- a/tests/triggers/fixtures/github-pull-request-comments.xml +++ b/tests/triggers/fixtures/github-pull-request-comments.xml @@ -2,19 +2,19 @@ <project> <triggers class="vector"> <org.jenkinsci.plugins.ghprb.GhprbTrigger> - <spec>* * * * *</spec> <adminlist>user1 user2</adminlist> - <allowMembersOfWhitelistedOrgsAsAdmin>true</allowMembersOfWhitelistedOrgsAsAdmin> <whitelist>user3 user4</whitelist> <orgslist>org1 org2</orgslist> <whiteListLabels/> <blackListLabels/> - <cron>* * * * *</cron> <excludedRegions/> <includedRegions/> + <spec>* * * * *</spec> + <allowMembersOfWhitelistedOrgsAsAdmin>true</allowMembersOfWhitelistedOrgsAsAdmin> + <cron>* * * * *</cron> <triggerPhrase>retest this please</triggerPhrase> <skipBuildPhrase/> <onlyTriggerPhrase>true</onlyTriggerPhrase> diff --git a/tests/triggers/fixtures/github-pull-request-full.xml b/tests/triggers/fixtures/github-pull-request-full.xml index 3f282fda..7bfe2e3c 100644 --- a/tests/triggers/fixtures/github-pull-request-full.xml +++ b/tests/triggers/fixtures/github-pull-request-full.xml @@ -2,10 +2,8 @@ <project> <triggers class="vector"> <org.jenkinsci.plugins.ghprb.GhprbTrigger> - <spec>* * * * *</spec> <adminlist>user1 user2</adminlist> - <allowMembersOfWhitelistedOrgsAsAdmin>true</allowMembersOfWhitelistedOrgsAsAdmin> <whitelist>user3 user4</whitelist> <orgslist>org1 @@ -14,12 +12,14 @@ org2</orgslist> label2</whiteListLabels> <blackListLabels>label3 label4</blackListLabels> - <cron>* * * * *</cron> <excludedRegions>exclude region</excludedRegions> <includedRegions>include region</includedRegions> <buildDescTemplate>build description</buildDescTemplate> + <spec>* * * * *</spec> + <allowMembersOfWhitelistedOrgsAsAdmin>true</allowMembersOfWhitelistedOrgsAsAdmin> + <cron>* * * * *</cron> <triggerPhrase>retest this please</triggerPhrase> <skipBuildPhrase>no tests</skipBuildPhrase> <onlyTriggerPhrase>true</onlyTriggerPhrase> diff --git a/tests/triggers/fixtures/github-pull-request-minimal.xml b/tests/triggers/fixtures/github-pull-request-minimal.xml index 755b16d4..dbeac30a 100644 --- a/tests/triggers/fixtures/github-pull-request-minimal.xml +++ b/tests/triggers/fixtures/github-pull-request-minimal.xml @@ -2,16 +2,16 @@ <project> <triggers class="vector"> <org.jenkinsci.plugins.ghprb.GhprbTrigger> - <spec/> <adminlist/> - <allowMembersOfWhitelistedOrgsAsAdmin>false</allowMembersOfWhitelistedOrgsAsAdmin> <whitelist/> <orgslist/> <whiteListLabels/> <blackListLabels/> - <cron/> <excludedRegions/> <includedRegions/> + <spec/> + <allowMembersOfWhitelistedOrgsAsAdmin>false</allowMembersOfWhitelistedOrgsAsAdmin> + <cron/> <triggerPhrase/> <skipBuildPhrase/> <onlyTriggerPhrase>false</onlyTriggerPhrase> diff --git a/tests/triggers/fixtures/github-pull-request-multiple-extensions.xml b/tests/triggers/fixtures/github-pull-request-multiple-extensions.xml index 35f517a0..f2d8d14b 100644 --- a/tests/triggers/fixtures/github-pull-request-multiple-extensions.xml +++ b/tests/triggers/fixtures/github-pull-request-multiple-extensions.xml @@ -2,19 +2,19 @@ <project> <triggers class="vector"> <org.jenkinsci.plugins.ghprb.GhprbTrigger> - <spec>* * * * *</spec> <adminlist>user1 user2</adminlist> - <allowMembersOfWhitelistedOrgsAsAdmin>true</allowMembersOfWhitelistedOrgsAsAdmin> <whitelist>user3 user4</whitelist> <orgslist>org1 org2</orgslist> <whiteListLabels/> <blackListLabels/> - <cron>* * * * *</cron> <excludedRegions/> <includedRegions/> + <spec>* * * * *</spec> + <allowMembersOfWhitelistedOrgsAsAdmin>true</allowMembersOfWhitelistedOrgsAsAdmin> + <cron>* * * * *</cron> <triggerPhrase>retest this please</triggerPhrase> <skipBuildPhrase/> <onlyTriggerPhrase>true</onlyTriggerPhrase> diff --git a/tests/triggers/fixtures/github-pull-request-status.xml b/tests/triggers/fixtures/github-pull-request-status.xml index f499478d..c12373cf 100644 --- a/tests/triggers/fixtures/github-pull-request-status.xml +++ b/tests/triggers/fixtures/github-pull-request-status.xml @@ -2,19 +2,19 @@ <project> <triggers class="vector"> <org.jenkinsci.plugins.ghprb.GhprbTrigger> - <spec>* * * * *</spec> <adminlist>user1 user2</adminlist> - <allowMembersOfWhitelistedOrgsAsAdmin>true</allowMembersOfWhitelistedOrgsAsAdmin> <whitelist>user3 user4</whitelist> <orgslist>org1 org2</orgslist> <whiteListLabels/> <blackListLabels/> - <cron>* * * * *</cron> <excludedRegions/> <includedRegions/> + <spec>* * * * *</spec> + <allowMembersOfWhitelistedOrgsAsAdmin>true</allowMembersOfWhitelistedOrgsAsAdmin> + <cron>* * * * *</cron> <triggerPhrase>retest this please</triggerPhrase> <skipBuildPhrase/> <onlyTriggerPhrase>true</onlyTriggerPhrase> |