2013-05-08 44 views
7

我想知道是否有人知道什麼URL是必需的(作爲GET或POST),將獲得最後一個Jenkins作業的狀態碼(結果)(當客戶端調用GET請求時不知道構建號)?我只是希望能夠檢測到結果是紅色還是綠色/藍色。什麼URL會得到最後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多個工作的測試套件的信息,並通過電子郵件報告所有這些工作。

回答

12

您可以使用符號描述lastBuild

http://localhost/jenkins/job/<jobName>/lastBuild/api/xml 

result元素包含描述生成的結果字符串。

+0

優秀的,它很好。非常感謝你。 :-)今天晚些時候我會發布我的代碼。 – djangofan 2013-05-08 16:23:44

+0

好的,我在這裏添加了我的示例代碼:https://gist.github.com/djangofan/5543273 – djangofan 2013-05-08 20:16:07

相關問題