diff --git a/jenkins_jobs/modules/wrappers.py b/jenkins_jobs/modules/wrappers.py
index ca743b2d9..e7401e76c 100644
--- a/jenkins_jobs/modules/wrappers.py
+++ b/jenkins_jobs/modules/wrappers.py
@@ -2297,18 +2297,22 @@ def artifactory_generic(registry, xml_parent, data):
info.get('version', str(sys.maxsize)))
if version >= pkg_resources.parse_version('2.3.0'):
- deployReleaseRepo = XML.SubElement(details, 'deployReleaseRepository')
- XML.SubElement(deployReleaseRepo, 'keyFromText').text = data.get(
- 'key-from-text', '')
- XML.SubElement(deployReleaseRepo, 'keyFromSelect').text = data.get(
- 'key-from-select', '')
- XML.SubElement(deployReleaseRepo, 'dynamicMode').text = str(
- 'key-from-text' in data.keys()).lower()
+ deploy_release_repo = XML.SubElement(
+ details, 'deployReleaseRepository')
+ mapping = [
+ ('key-from-text', 'keyFromText', ''),
+ ('key-from-select', 'keyFromSelect', ''),
+ ('key-from-text', 'dynamicMode', ''),
+ ]
+ helpers.convert_mapping_to_xml(
+ deploy_release_repo, data, mapping, fail_required=False)
else:
- XML.SubElement(details, 'repositoryKey').text = data.get(
- 'repo-key', '')
- XML.SubElement(details, 'snapshotsRepositoryKey').text = data.get(
- 'snapshot-repo-key', '')
+ mapping = [
+ ('repo-key', 'repositoryKey', ''),
+ ('snapshot-repo-key', 'snapshotsRepositoryKey', ''),
+ ]
+ helpers.convert_mapping_to_xml(
+ details, data, mapping, fail_required=False)
XML.SubElement(artifactory, 'deployPattern').text = ','.join(data.get(
'deploy-pattern', []))
@@ -2316,15 +2320,14 @@ def artifactory_generic(registry, xml_parent, data):
data.get('resolve-pattern', []))
XML.SubElement(artifactory, 'matrixParams').text = ','.join(
data.get('matrix-params', []))
-
- XML.SubElement(artifactory, 'deployBuildInfo').text = str(
- data.get('deploy-build-info', False)).lower()
- XML.SubElement(artifactory, 'includeEnvVars').text = str(
- data.get('env-vars-include', False)).lower()
- XML.SubElement(artifactory, 'discardOldBuilds').text = str(
- data.get('discard-old-builds', False)).lower()
- XML.SubElement(artifactory, 'discardBuildArtifacts').text = str(
- data.get('discard-build-artifacts', True)).lower()
+ mapping = [
+ ('deploy-build-info', 'deployBuildInfo', False),
+ ('env-vars-include', 'includeEnvVars', False),
+ ('discard-old-builds', 'discardOldBuilds', False),
+ ('discard-build-artifacts', 'discardBuildArtifacts', True),
+ ]
+ helpers.convert_mapping_to_xml(
+ artifactory, data, mapping, fail_required=False)
# envVarsPatterns
helpers.artifactory_env_vars_patterns(artifactory, data)
diff --git a/tests/wrappers/fixtures/artifactory004.xml b/tests/wrappers/fixtures/artifactory004.xml
index 9878620a9..f63afae25 100644
--- a/tests/wrappers/fixtures/artifactory004.xml
+++ b/tests/wrappers/fixtures/artifactory004.xml
@@ -8,7 +8,7 @@
repo
- false
+
*.zip=>results