Only write EnvInject properties if they have been specified
Change-Id: I98c23f378257ea286775452791ecc2d82de07b18
This commit is contained in:
parent
467cae33a5
commit
49fece8487
|
@ -113,16 +113,19 @@ def inject(parser, xml_parent, data):
|
||||||
inject = XML.SubElement(xml_parent,
|
inject = XML.SubElement(xml_parent,
|
||||||
'EnvInjectJobProperty')
|
'EnvInjectJobProperty')
|
||||||
info = XML.SubElement(inject, 'info')
|
info = XML.SubElement(inject, 'info')
|
||||||
XML.SubElement(info, 'propertiesFilePath').text = str(
|
# It seems like empty properties (e.g. <scriptFilePath/>) cause problems
|
||||||
data.get('properties-file', ''))
|
# for the EnvInject plugin (EnvInject v1.5.3 on jenkins v1.464 at least).
|
||||||
XML.SubElement(info, 'propertiesContent').text = str(
|
# Inject only those properties that have been specified.
|
||||||
data.get('properties-content', ''))
|
str_props = {'properties-file': 'propertiesFilePath',
|
||||||
XML.SubElement(info, 'scriptFilePath').text = str(
|
'properties-content': 'propertiesContent',
|
||||||
data.get('script-file', ''))
|
'script-file': 'scriptFilePath',
|
||||||
XML.SubElement(info, 'scriptContent').text = str(
|
'script-content': 'scriptContent',
|
||||||
data.get('script-content', ''))
|
'groovy-content': 'groovyScriptContent',
|
||||||
XML.SubElement(info, 'groovyScriptContent').text = str(
|
}
|
||||||
data.get('groovy-content', ''))
|
for p, xp in str_props.iteritems():
|
||||||
|
if p in data:
|
||||||
|
XML.SubElement(info, xp).text = str(data[p])
|
||||||
|
|
||||||
XML.SubElement(info, 'loadFilesFromMaster').text = str(
|
XML.SubElement(info, 'loadFilesFromMaster').text = str(
|
||||||
data.get('load-from-master', 'false')).lower()
|
data.get('load-from-master', 'false')).lower()
|
||||||
XML.SubElement(inject, 'on').text = str(
|
XML.SubElement(inject, 'on').text = str(
|
||||||
|
|
Loading…
Reference in New Issue