45

我知道我可以打电话localhost/job/RSpec/lastBuild/api/json来获取最新 Jenkins 构建的状态。但是,由于我们的构建运行时间很长(几个小时),我对最后一次完整的构建状态比在这个确切时刻运行的运行更感兴趣。

最后一次完全运行的构建是否有 api 端点?或者我应该拉出完整的构建列表并从那里选择倒数第二个?

4

3 回答 3

111

试试 http://$host/job/$jobname/lastSuccessfulBuild/api/json

Jenkins(和 Hudson)公开了多个不同的构建,例如lastBuild、lastStableBuild、lastSuccessfulBuild、lastFailedBuild、lastUnstableBuild、lastUnsuccessfulBuild、lastCompletedBuild

于 2013-08-14T20:04:15.637 回答
10

要获取最后一个成功的内部版本号:

curl --user <userName:password> https://<url>/job/<job-Name>/api/xml?xpath=/*/lastSuccessfulBuild/number
于 2019-07-23T10:12:17.163 回答
0

JenkinsAPI 也是一个不错的选择。我主要使用python,所以这是我的版本:

  1. pip install jenkinsapi
  2. python 代码:(在我的情况下,不需要对 Jenkins 进行特殊身份验证,否则我假设需要令牌)
from jenkinsapi.jenkins import Jenkins
server = Jenkins(<Jenkins server URL>)
job = server.get_job(<job name>)
last_successful_build_number = job.get_last_good_buildnumber()
于 2022-01-04T11:44:10.760 回答