Jenkins-Pipeline: select nodejs-Version (+ Python-Version)

8

Ich habe ein Problem mit einer Jenkins-Pipeline in einer Jenkins-Datei. Ich habe 4 verschiedene NodeJs-Versionen auf meiner Jenkins-Instanz. Ich würde gerne auswählen, welches ich in meiner Pipeline verwenden möchte, aber offizielle Plugin-Beispiele ( Ссылка ) einfach nicht funktionieren.

Ich habe diesen ersten Ansatz versucht, was fehlgeschlagen ist, weil $ PATH durch den Abschnitt tools überschrieben wurde.

%Vor%

Ich habe diesen zweiten Ansatz versucht, weil der Befehl tool überhaupt nichts zu tun scheint.

%Vor%

Schließlich habe ich versucht, dieses, das für NodeJS funktioniert aber ... scheint nicht "sehr schlau", und erlaubt mir nicht, meine spezifische Version von "Python" richtig zu behandeln - Ja, ich habe auch 2 verschiedene Versionen von Python, die ich genauso handhaben möchte wie ich für Knoten -

%Vor%

Ich habe auch eine vierte Lösung, die pipeline Syntax nicht verwendet. Es funktioniert für Nodejs, aber nicht für Python (bis jetzt). Und wieder scheint es nicht sehr elegant zu sein, env.PATH ...

manuell zu definieren %Vor%

Alles in allem frage ich mich, welche Lösung (sicherlich eine andere, die ich hier nicht aufgeführt habe) die beste ist? Welchen Rat schlägst du und warum?

Prost, Olivier

    
Olivier 15.02.2017, 22:34
quelle

1 Antwort

1

Also. Dies ist ein Problem des Plugin "EnvInject": Ссылка

Meine obige Problemumgehung # 4 ist die richtige Lösung, wenn Sie EnvInject beibehalten möchten.

%Vor%

Ansonsten ist das Entfernen des EnvInject-Plugins auch eine gute Lösung, wenn möglich.

    
Olivier 18.09.2017, 16:47
quelle