我必须使用其api创建/更新jenkins作业,因为我的所有作业都使用其他脚本也使用的参数,并且我试图将这些脚本集中化,因此当我在一个位置进行更改时,更改会反射(reflect)所有内容。
当前,如果有人更改了脚本,他们还必须手动编辑jenkins作业的参数。
我看到了用于创建作业的远程API的示例,并且能够成功创建测试作业,但是除了删除并重新创建它之外,我如何才能编辑现有的作业(这不是一个选项,因为我必须维护构建历史记录)。
请您参考如下方法:
您可以像这样使用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('<string>clean</string>', '<string>string bean</string>')
myJob.update_config(new)


