通过HTTP获取Jenkins构建结果获取请求

时间:2015-07-23 00:05:56

标签: jenkins

我试图从Jenkins工作中获取测试结果,并且想知道是否有可能通过发出GET请求(例如,某个作业:JENKINS_URL/job/JOB_NAME/build/api/json)来获取json结果,而不记录进入Jenkins服务器。

我无法理解如何发送所有如何在API调用中传递身份验证信息(例如API令牌/密码,用户名)。

我知道Jenkins CLI是一个选项,但如果可能的话,我宁愿不使用它。

要明确的是,当我在计算机上登录时,对JENKINS_URL/job/JOB_NAME/build/api/json的调用会产生构建结果,但是当我退出时,该链接会将我带到登录页面。

1 个答案:

答案 0 :(得分:0)

您必须配置凭据并为匿名提供读取权限,或在您的请求中传递您的用户/密码:

curl --user username:password jenkins_url/job/job_name/build_number/api/json

相同但使用api_token:

curl --user username:api_token jenkins_url/job/job_name/build_number/api/json

如果您还传递?pretty=true参数,您应该看到如下内容:

{
   "actions" : [
     {
       "parameters" : [
         ...
      }
   ],
  ...
  "building" : false,
  "description" : null,
  "displayName" : "#36",
  "duration" : 1936,
  "estimatedDuration" : 2020,
  "number" : 36,
  "queueId" : 224,
}