2013-06-15 2 views
10

내 Jenkins 작업 내에서 다른 루비 버전을 선택하려면 rvm (또는 rbenv/chruby)을 사용하고 싶습니다. 기본적으로 Jenkins는 우분투에서 대시 인/bin/sh를 사용합니다. 이를 위해 젠킨스 쉘 실행을위한 로그인 셸을 기본으로 설정하는 방법

내가 사방 기능을 실행 매 쉘의 상단에

#!/bin/bash -l 

을 추가 할 수 있습니다, 변경 될 수 있습니다. 그게 성가신 일이 많은 것을보고, 저는 그 것을 어딘가에 배치 할 수 있기를 바랍니다. 은 "쉘 실행"구성 설정을 사용

, 나는 그러나 "/ 빈/bash는 -l"-xe/tmp를

실패합니다 '-l'와 같은 매개 변수를 추가, 그것은 떠들썩한 파티를 실행 얻을 수 있습니다 /hudson5660076222778817826.sh 치명적 : 명령 실행에 실패했습니다. "/ bin/bash -l"( 디렉토리의/home/jenkins/jobs/workspace/rvm-test) 프로그램을 실행할 수 없습니다. error = 2, 해당 파일 없음 또는 디렉토리

rvm 플러그인을 사용해 보았습니다. 젠킨스의 경우, 현재 버전에도 설치되지 않습니다.

아이디어가 있으십니까? :)

답변

11
  1. 당신은 bash는 래퍼를 작성하여 해결할 수 :

    #!/bin/sh 
    # for ex.: /usr/local/bin/login-bash 
    exec /bin/bash -l "[email protected]" 
    
  2. 을 그냥 RVM와 함께 제공되는 RVM-쉘을 사용하는 기본 루비를 사용합니다. 젠킨스 사용자와 유형으로 로그인 :

    $ which rvm-shell 
    /home/jenkins/.rvm/bin/rvm-shell 
    

는 RVM-쉘의 경로를 얻을. "Shell executable"옵션에이 경로를 사용하십시오.

+0

당신은 내 목숨을 구했습니다. – Snowman