So weisen Sie einer Variablen in der Jenkins-Datei einen Git-Commit-Hash zu

Lesezeit: 1 Minute

Ich versuche, den Git-Commit-Hash wie folgt einer in der Jenkins-Pipeline definierten Variablen zuzuweisen

GIT_COMMIT_HASH = sh "(git log -n 1 --pretty=format:'%H')"

Dadurch wird der Commit-Hash im Jenkins-Build-Protokoll gedruckt, der Wert kann jedoch nicht zugewiesen werden.

Wenn ich versuche, den Wert mit auszudrucken

steps{
    script {
                GIT_COMMIT_HASH = sh "(git log -n 1 --pretty=format:'%H')"

                echo "**************************************************"
                echo "${GIT_COMMIT_HASH}"
                echo "**************************************************"
    }
}

Das Ergebnis ist null

Wie kann ich den Wert zuweisen?

  • Es wird nicht funktionieren. Ich erhalte die Fehlermeldung sh: Syntaxfehler: Wort unerwartet (erwartet „)“)

    – 0x12

    21. September 2017 um 0:43


  • Sie müssen etwas falsch eingegeben haben. Ich vermute, dass Sie ein Komma übersehen haben.

    – Rob Hales

    21. September 2017 um 1:19

  • Hoppla. Ich habe die Bezeichnung für die erste Variable vergessen. Ich denke, es ist ein „Skript“. Oben behoben.

    – Rob Hales

    21. September 2017 um 2:02

  • Ich habe dies gerade mit einigen meiner Skripte validiert. Dies ist jetzt die korrekte Syntax. Entschuldigung, ich sollte beim Kopieren/Einfügen vorsichtiger sein.

    – Rob Hales

    21. September 2017 um 4:40

  • git rev-parse HEAD ist eine schnellere Möglichkeit, dies zu tun

    – Rossiar

    10. Dezember 2019 um 12:55 Uhr

  • An den Downvoter: Entschuldigung, vielleicht habe ich vorher nicht genügend Hintergrundinformationen bereitgestellt. Bearbeitet. Können Sie es bitte noch einmal bewerten?

    – Greg Dubicki

    2. Februar 2022 um 21:54

  • Es ist immer besser, das gewünschte Datum zu vergleichen

    – 0x12

    4. Februar 2022 um 1:07

  • Vergleichen Sie es womit, @co2f2e? Ich verstehe deinen Standpunkt nicht. Übersehe ich überhaupt einen Grund, warum niemand eine integrierte Variable vorschlägt?

    – Greg Dubicki

    6. Februar 2022 um 7:51 Uhr


  • Eindrucksvoll! Der dumme Jenkins versteckt diese Informationen im Stapelüberlauf. TeamCity macht diese Informationen zu einem erstklassigen Ergebnis des Builds.

    – CJ

    26. Mai 2022 um 19:02 Uhr

1450440cookie-checkSo weisen Sie einer Variablen in der Jenkins-Datei einen Git-Commit-Hash zu

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy