Abrufen von SubProject-Builds über die Jenkins-API

8

Ich habe ein Jenkins-Projekt konfiguriert (ich nenne es hier SuperJob), um einfach verschiedene andere jenkins-Projekte in der richtigen Reihenfolge aufzurufen.

Ich möchte in der Lage sein, das Ergebnis aller Teilprojekte für eine bestimmte Build-Nummer dieses SuperJob durch Jenkins API

herauszufinden

Blick auf den Code geschrieben HIER Ich kann die Liste der spezifischen Projekte, die im SuperJob-Projekt konfiguriert sind, von jedem Build abrufen, aber ich kann keine Möglichkeit finden, herauszufinden, welche spezifische Build-Nummer von jedem dieser Projekte von einem ausgeführt wurde spezifischer Build von SuperJob.

Ich möchte zum Beispiel herausfinden, dass "SuperJob Build # 5" "MyJob Build # 3" und "OtherJob Build # 20" ausgelöst hat, sodass ich aggregieren und die Ergebnisse für alle vergleichen kann.

Ich habe alle Upstream- und Downstream-APIs ausprobiert, einschließlich der Verwendung der Unterprojekte als ein Argument für die Verwandtschafts-APIs, aber sie alle kehren leer oder null zurück.

Ich vermute, das ist möglich, da Jenkins selbst in der Lage ist, diese Informationen im Web zu zeigen, die von einem Plugin kommen, aber ich konnte nicht herausfinden, wie.

    
ByteFlinger 13.10.2015, 14:09
quelle

1 Antwort

2

Ich habe das gleiche Problem, und zur Zeit suche ich die Lösung, um Sub-Builds zu finden, indem ich das Konsolenprotokoll jedes Builds analysiere. Das Protokoll enthält die Namen der ausgelösten Jobs und die Build-Nummern (nachdem sie beendet wurden).

%Vor%

Einige Anmerkungen:

  1. Sie müssen überprüfen, ob die von mir verwendete Regex für alle Ihre Fälle geeignet ist, natürlich können Sie sie in eine Methode ändern, die nach einigen anderen Regex-Übereinstimmungen sucht.
  2. Falls Sie multijob plugin verwenden und alle Ihre Jobs von diesem Typ sind, ist es viel einfacher, da MultijobBuild eine getSubBuilds () hat, die genau das zurückgibt, was Sie wollen.
  3. Ich bin immer noch auf der Suche nach einem besseren Weg, Sub Builds zu finden, die von einem Build ausgelöst werden, insbesondere wenn Builds in allen Zuständen zurückgegeben werden können, die fertig sind oder noch erstellt werden.
Tidhar Klein Orbach 14.01.2016 08:39
quelle