当前位置:  开发笔记 > 编程语言 > 正文

如何使用api更新jenkins作业

如何解决《如何使用api更新jenkins作业》经验,为你挑选了3个好方法。

我必须使用它的api创建/更新jenkins作业,因为我的所有作业都使用其他脚本也使用的参数,并且我试图集中脚本,所以当我在一个地方更改它时,更改反映了所有.

目前,如果有人更改了脚本,他们也必须手动编辑jenkins作业的参数.

我看到了远程API用于创建作业的示例,并且能够成功创建测试作业,但是如何编辑现有作业,除了删除它并再次创建它(这不是一个选项,因为我必须维护构建历史记录).



1> 小智..:

你可以像这样使用python:

from jenkinsapi.jenkins import Jenkins
jenkinsSource = 'http://10.52.123.124:8080/'
server = Jenkins(jenkinsSource, username = 'XXXXX', password = 'YYYYY')
myJob=server.get_job("__test")
myConfig=myJob.get_config()
print myConfig
new = myConfig.replace('clean', 'string bean')
myJob.update_config(new)



2> dsymquen..:

如果其他人也在寻找相同的答案,

看起来解决方案要容易得多,您只需更新config.xml并将更新后的config.xml发布回jenkins,您的工作就会更新.


找到这个非常有用的食谱,如何更新config.xml http://benkiew.wordpress.com/2012/01/12/automating-hudsonjenkins-via-rest-and-curl-a-very-small-cookbook/

3> 小智..:

您还可以将更新的config.xml发布到可以获取的URL config.xml,以编程方式更新作业的配置.

获取url模式: $JENKINS_SERVER/job/$JOB_NAME/config.xml

详细的doc模式: $JENKINS_SERVER/job/$JOB_NAME/api

示例:https://ci.jenkins-ci.org/job/infra_atlassian-base/api/

推荐阅读
农大军乐团_697
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有