2016-08-26 1 views
0

Wir möchten auf Build-Job-Eigenschaften changeSets-Element in Jenkins-Pipeline zugreifen. Um dieses Szenario zu erzeugen, folgen Sie bitte folgende Schritte:Zugriff auf Build-Job-Eigenschaften ändernSets in Jenkins?

  1. Auf jenkins Pipeline, einen Job von Freestyle-Projekt nennen.
  2. Unter diesem Job haben wir die TFS-Quellcodeverwaltung und das MSBuild-Plugin verwendet, um .csproj zu erstellen.
  3. Auf Code jenkins Pipeline wie unten, zu bauen Auftragseigenschaften zuzugreifen:

    def eJob = Build Job: "DotNetAppProj", warten: true

  4. Jetzt wollen wir eJob.changeSets zugreifen und es ist alles Methoden/Eigenschaften.

Bitte schlagen Sie eine Lösung dafür vor. Vielen Dank im Voraus.

Antwort

1

Möchten Sie ein Beispiel für die Verwendung der Membervariable changeSets verwenden?

Wenn dies der Fall ist, erhalten die folgenden die erste Festschreibung in "DotNetAppProj" und zeigen den Benutzernamen und die Nachricht commit an.

node { 
    def eJob= build job: "DotNetAppProj", wait: true 
    if(eJob.changeSets.size() > 0 && eJob.changeSets.items.size() > 0) { 
    echo eJob.changeSets[0].items[0].author.fullName 
    echo eJob.changeSets[0].items[0].msg 
    } 
} 

Eine vollständige Liste der Mitglieds andere Variablen als msg und Autor finden Sie in der ChangeLogSet.Entry.

+1

Ihr Ansatz ist richtig, Build-Eigenschaften zu bekommen, in meinem Fall bekomme ich eJob.changeSets.size() = 0. –

+0

Bump. Ich habe das gleiche Problem von changeSets immer leer. –

Verwandte Themen