2016-06-13 11 views
0

Ich versuche RVM mit dem Jenkins Multibranch-Plugin zu verwenden. Ich laufe immer wieder auf ein Problem mit RVM nicht gefunden. Ich denke, es liegt wahrscheinlich daran, dass der Nutzer von jenkins keine echte Shell hat.Jenkins Multibranch-Plugin und RVM

Ich installierte RVM mit dann folgen Sie den RVM Installationsanweisungen.

Meine Jenkins-Datei verwendet:

sh 'source ~/.bashrc' 
sh 'rvm use [email protected]' 

Die bashrc wie folgt aussieht:

export PATH="$PATH:$HOME/.rvm/bin" # Add RVM to PATH for scripting 
[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm" 

Wenn ich eine Änderung und die Build-Läufe begehen, ich diesen Fehler:

/var/lib/jenkins/workspace/Chalk Web/[email protected]/durable-27a33a52/script.sh: line 2: rvm: command not found 

Wenn ich ssh an die Maschine, und den Befehl ausführen, kann ich RVM fein ausführen. Ich nehme jedoch an, dass Jenkins keine Login-Shell hat, wenn es den Build ausführt. Wie kann ich Jenkins erlauben, RVM zu sehen?

Vielen Dank im Voraus!

Antwort

1

Es ist ein Weg, um sicherzustellen, dass alle Ihrer Shell-Befehle mit einem Login-Shell ausgeführt werden, und das ist mein Problem gelöst:

sh '''#!/bin/bash -l 
rvm use [email protected] 
bundle install 
etc... 
'''