2014-08-28 31 views
7

Muszę uruchomić kompilację jenkins przy użyciu specyficznego środowiska conda na naszym serwerze Jenkins (działającym pod Windows). Myślałem, że będzie tak łatwe, jak bieganie:Jak aktywować środowisko conda w jenkins build

activate myenv 
python test_env.py 

ale to wydaje się spowodować, aby wyjść zamiast budować, zanim jeszcze zostanie uruchomiony skrypt. Oto dziennik konsoli Jenkins:

activate myenv 
Activating environment "myenv"... 
Finished: SUCCESS 

Po usunięciu linii aktywacyjnej skrypt Pythona wykonuje się poprawnie.

FYI, skrypt Używam:

import os 

f = open('env.txt','w') 

for k, v in os.environ.iteritems(): 
    print k, v 
    f.write('%s\t%s\n' % (k,v)) 
f.close() 

Czy ktoś wie co się dzieje? Czy powinienem zamiast tego bezpośrednio wywołać odpowiedni plik wykonywalny Pythona?

Odpowiedz

2

Myślę, że skrypt aktywacyjny w systemie Windows uruchamia nową podpowłokę, co oznacza, że ​​aktualna powłoka istnieje natychmiast. Czy możesz spróbować ręcznie ustawić zmienne ENV, takie jak PATH i inne, zamiast uaktywniać?

+1

Cześć Bradley, Tak, chociaż chodzi mi o zrobienie tego, zasadniczo poprzedzając foldery myenv/bin i myenv/Scripts ścieżką PATH. Zadałem to pytanie, bo nie wiem, co jeszcze "uaktywnia" ... czy to wystarczy? – Jahfet