W Buildbot potrzebuję być w stanie "źródło" środowiska przed wykonaniem kroku kompilacji.Jak można "pozyskać" środowisko wewnątrz kroku Buildbot?
Gdybym budowanie aplikacji z linii poleceń za pomocą bash musiałbym zrobić:
. envrionment-set-up-script
build_command
w pliku master.cfg budować bot Próbowałem następujące:
factory.addStep(ShellCommand(command=["source","environment-set-up-script"])
factory.addStep(ShellCommand(command=[".","environment-set-up-script"]))
factory.addStep(Configure(command=["source","environment-set-up-script"]))
factory.addStep(Configure(command=[".","environment-set-up-script"]))
Wszystko z których to się nie uda, dzieje się tak dlatego, że polecenia nie można znaleźć, co ma sens, ponieważ jest to wbudowane bash.
Również nie sądzę, że jest to właściwe podejście, ponieważ środowisko niekoniecznie będzie używane, gdy zostanie wywołany następny etap fabryki.
Jedynym przypadkiem, który może się nie powieść, jest sytuacja, w której skrypt źródłowy rozpoczyna jakiś proces, w którym a) nie przeżywa śmierci powłoki, a b) jest przywoływany przez środowisko. –
To dość intensywne, w porównaniu do niektórych z prostszych opcji opisanych tutaj, ale z pewnością daje dużą elastyczność. Rozważ uogólnienie tego i przesłanie go jako poprawki do Buildbota? – djmitche