我想知道是否有人知道需要什么URL(作为GET或POST)来获取上一个Jenkins作业的状态代码(结果)(当调用GET请求的客户端不知道构建#时) ?我只是希望能够检测结果是红色还是绿色/蓝色。
我有这个代码示例,但我需要调整它以便它适用于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多个工作的测试套件的信息,并通过电子邮件报告所有这些工作。
答案 0 :(得分:20)
您可以使用符号描述符lastBuild
:
http://localhost/jenkins/job/<jobName>/lastBuild/api/xml
result
元素包含一个描述构建结果的字符串。