jenkins - 哪个 URL 将获得上一个 Jenkins 作业的状态代码(结果)?

标签 jenkins hudson

我想知道是否有人知道需要什么 URL(作为 GET 或 POST)来获取最后一个 Jenkins 作业的状态代码(结果)(当调用 GET 请求的客户端不知道 build# 时)?我只想能够检测结果是 RED 还是 GREEN/BLUE 。

我有这个代码示例,但我需要调整它以便它适用于 Jenkins,为此目的(如上所述):

public class Main {
    public static void main(String[] args) throws Exception {
        URL url = new URL("http://localhost/jenkins/api/xml");
        Document dom = new SAXReader().read(url);
        for( Element job : (List<Element>)dom.getRootElement().elements("job")) {
            System.out.println(String.format("Name:%s\tStatus:%s",
                job.elementText("name"), job.elementText("color")));
        }
    }
}

一旦我找出答案,我将分享一个完整的例子来说明我是如何使用它的。我想创建一个作业来收集有关 20 多个作业的测试套件的信息,并通过电子邮件报告所有这些作业。

最佳答案

您可以使用符号描述符 lastBuild :

http://localhost/jenkins/job/<jobName>/lastBuild/api/xml
result element 包含一个描述构建结果的字符串。

关于jenkins - 哪个 URL 将获得上一个 Jenkins 作业的状态代码(结果)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16445315/

相关文章:

mysql - Openshift 上的 Jenkins-Sonar 通信

Jenkins kubernetes 插件无法正常工作

java - Jenkins - 无法读取 'https://github.com' : No such device or address 的用户名

java - 从主机连接到虚拟服务器失败,网络无法从 Java 访问

groovy - 如何让 Jenkins/Hudson 工作监视其他一些工作并决定是否建立?

jenkins - 如何延迟 Jenkins 的工作直到达到某个时间?

jenkins - 我可以让 Jenkins 触发器在每个月的第一个工作日运行吗?

hudson - Jenkins 有 "Who Broke the Build"插件吗?

delphi - hudson 的 dunit 测试结果消息

Jenkins 无法连接到存储库