使用Groovy Jenkins API更新Jenkins作业
发布时间:2020-12-14 16:22:29 所属栏目:大数据 来源:网络整理
导读:我正在使用Groovy脚本控制台在Jenkins上创建和更新作业.使用此处记录的API http://javadoc.jenkins-ci.org/ 我已经发现了如何通过使用来创建一份工作 ????createProjectFromXML(String name,InputStream xml) 但是,如果作业已存在,则此方法将失败.如何使用新
|
我正在使用Groovy脚本控制台在Jenkins上创建和更新作业.使用此处记录的API
http://javadoc.jenkins-ci.org/ 我已经发现了如何通过使用来创建一份工作 但是,如果作业已存在,则此方法将失败.如何使用新的xml更新现有作业? 更新 根据@ ogondza的回答,我使用了以下内容来创建并更新作业 import jenkins.*
import jenkins.model.*
import hudson.*
import hudson.model.*
import java.io.*
import java.nio.charset.StandardCharsets
import javax.xml.transform.stream.*
config = """......My config.xml......"""
InputStream stream = new ByteArrayInputStream(config.getBytes(StandardCharsets.UTF_8));
job = Jenkins.getInstance().getItemByFullName("job_name",AbstractItem)
if (job == null) {
println "Constructing job"
Jenkins.getInstance().createProjectFromXML("job_name",stream);
}
else {
println "Updating job"
job.updateByXml(new StreamSource(stream));
}
解决方法
使用
AbstractItem#updateByXml进行更新.另请注意,您可以使用REST API和Jenkins CLI通过XML创建/更新作业.
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
