接上一篇,curl命令可以远程执行job了,但是我们每次执行的job数量特别多,肯定要把job名做成参数然后循环取值,不停的执行
实现:
#!/usr/bin/env groovy
properties(
[parameters(
[string(defaultValue: "", description: "微服务名", name: "jobName")]
)]
)
node("master") {
stage("test") {
jobID = "${jobName}"
withCredentials([string(credentialsId: 'jenkinsIP', variable:'jenkinsIP')]) {
for (item in jobID.tokenize(',')){
echo "for里面的jobID = " + item
sh '''curl -o index2.html -u qm:.. -X post http://'''+jenkinsIP+'''/job/'''+item+'''/buildWithParameters?token=doJob'''
}
}
}
}
PS:jenkinsIP是凭据里配置的参数,item是循环获取服务名的参数,dojob是上一篇配置的token
使用效果:


这篇博客介绍了如何在Jenkins中通过groovy脚本结合curl命令,以参数化方式批量执行多个job。脚本中定义了job名称作为参数,并通过循环结构依次执行每个job,使用了jenkinsIP的凭证并设置了特定的token。
935

被折叠的 条评论
为什么被折叠?



