2017-07-27 7 views
0

Ich versuche ein Jenkins-Plugin zu schreiben, das eine JSON-Datei liest, die von meinem Build generiert wird und eine Zusammenfassung seiner Daten auf der jeweiligen Build-Seite anzeigt. Ich habe das Beispiel anderer Plugins gefolgt und benutzerdefinierte Klassen, die Action, BuildStepDescriptor<Publisher> und Recorder erweitern, und kann benutzerdefinierten Text auf der Erstellungsseite erfolgreich anzeigen, aber wie kann ich auf das Build-Artefakt zugreifen?lesen Build-Artefakte in einem Jenkins-Plugin

In meiner benutzerdefinierten Action Klasse, die außer Kraft gesetzt perform() Methode erhält ein final AbstractBuild<?, ?> build Argument, das eine praktische getRootDir() Methode hat, aber dies scheint den Pfad des Verzeichnisses zurückzukehren alle der enthält archivierten-Dateien erstellen (dh solche, die waren explizit gespeichert), und es ist nicht der Pfad des eigentlichen Build-Arbeitsverzeichnisses.

Antwort

0

Nach etwas mehr Graben, fand ich, dass AbstractBuild hat auch eine getWorkspace() Methode, die ich meine gewünschte Datei wie folgt abrufen lassen: build.getWorkspace().child("report.json"). Ich bin mir nicht sicher, ob dies eine Fullproof-Lösung ist.