我尝试使用groovy通过以下代码更新Jenkins作业config.xml
def updateParameter(String key, String value){
println "changing defult value as $value for key $key"
def xml = new XmlSlurper().parseText(jobConfig)
xml.properties.'hudson.model.ParametersDefinitionProperty'.'parameterDefinitions'.'hudson.model.StringParameterDefinition'.each {
println 'found parameter: ' + it.name
if(it.name.text() == key){
println('default value changed')
it.defaultValue=value
}
}
jobConfig = XmlUtil.serialize(xml)
}
当运行jobConfig = XmlUtil.serialize(xml)时,它会更改格式,这很漂亮,但我在管道插件中丢失了链接中断,因此管道脚本不再起作用。有没有办法将GPathResult转换为String而不改变格式?
最诚挚的问候,
埃里克
答案 0 :(得分:0)
这完全是我的错,当我读取xml时删除了换行符。似乎XmlUtil.serialize(xml)不格式化xml标签的文本,这很好:)
最诚挚的问候,
Eric