2013-05-08 31 views
7

Herkesin, hangi Jenkins'in gerekli olduğunu (GET veya POST olarak) bilmesini isterim ki son Jenkins işinin durum kodunu (sonucu) alır (yapı #, GET isteğini alan istemci tarafından bilinmediğinde)? Sadece sonucun KIRMIZI veya YEŞİL/MAVİ olup olmadığını tespit edebilmek istiyorum.Son Jenkins işinin durum kodu (sonucu) hangi URL'yi alır?

Bu kod örneği var, ama (yukarıda belirtildiği gibi) bu amaçla, Jenkins için çalışır şekilde ayarlayın gerekir:

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"))); 
     } 
    } 
} 

cevabı anlamaya keresinde bir paylaşacak nasıl kullandığımı tam olarak örnek. 20+ işten oluşan bir test paketinde bilgi toplayan bir iş ve bunların hepsinde bir e-posta ile raporlar oluşturmak istiyorum.

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

result eleman yapı sonucunu açıklayan bir dize içerir:

cevap

12

Sembolik tanımlayıcı lastBuild kullanabilirsiniz.

+0

Mükemmel, harika çalışıyor. Çok teşekkür ederim. :-) Kodumu daha sonra göndereceğim bugün. – djangofan

+0

Tamam, örnek kodumu buraya ekledim: https://gist.github.com/djangofan/5543273 – djangofan