【发布时间】:2011-08-12 06:17:32
【问题描述】:
我需要强制停止在远程服务器中运行的 Hudson 构建。是否有命令/API 可以做到这一点?
例如:触发一个新的构建,我们可以这样做:- HUDSON_URL/job/JOBNAME/build
寻找类似的 API 来停止构建。
【问题讨论】:
标签: hudson hudson-api
我需要强制停止在远程服务器中运行的 Hudson 构建。是否有命令/API 可以做到这一点?
例如:触发一个新的构建,我们可以这样做:- HUDSON_URL/job/JOBNAME/build
寻找类似的 API 来停止构建。
【问题讨论】:
标签: hudson hudson-api
您应该能够向
发出 http 请求http://HUDSON_URL/job/JOBNAME/BUILDNUMBER/stop
您可以通过 xpath 请求获取内部版本号
http://HUDSON_URL/job/JOBNAME/api/xml?xpath=//lastBuild/number/text()
可能有一种方法可以放入 latestBuild 或 lastBuild 而不是 BUILDNUMBER,但如果没有,您可以只使用 2 个 http 获取。
【讨论】:
根据上述答案(赞成)、@girishs 的评论以及我自己在 Windows 环境中的一些工作(Linux 可能使用 wget 而不是 curl,尚未测试):
curl --request POST -u <USER>:<PASS> "%JENKINS_URL%/job/%JOB_NAME%/lastBuild/stop"
...这会停止最近的构建,而无需进行任何未来的配置编辑。您所需要的只是您的用户/通行证组合。
【讨论】: