2015-05-12 24 views
6

Właśnie zainstalowałem nodejs na jednym z moich serwerów budujących (Win Server 2008 R2), który hostuje agenta zdalnego Bamboo. Po zakończeniu instalacji i ponownym uruchomieniu komputera utknąłem w następującej sytuacji:Bambusowy agent do budowania zdalnego nie może znaleźć powershell.exe po zainstalowaniu nodejs

Zdalny agent budowania Bamboo działa jako usługa systemu Windows z użytkownikiem MyDomain \ MyUser. Kiedy budować z zadania inline PowerShell jest wykonanie nie powiedzie się z powodu błędu (z dziennika agenta kompilacji):

com.atlassian.utils.process.ProcessNotStartedException: powershell could not be started 
... 
java.io.IOException: Cannot run program "powershell" 
... 
java.io.IOException: CreateProcess error=2, The system cannot find the file specified 

zalogowaniu się do serwera jako MojaDomena \ myuser, mam zaznaczone, że PowerShell jest w drodze:

where powershell 
C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe 

Próbowałem ponownie uruchomić usługę i uruchomić ponownie komputer wiele razy. Brak szczęścia. Jedyną rzeczą, która działa, jest to, że wykonuję moje skrypty jako plik bat z absolutną ścieżką do powershell - ale nie chcę tego.

Szukałem na ten temat rozwiązań, ale mimo że wydaje się to powiązane: Hudson cannot find powershell after update to powershell 3 - proponowane rozwiązania nie działają.

Czego mi tu brakuje?

Odpowiedz

8

Jeśli zrobisz domyślną instalację nodejs, zobaczysz, że dodaje ona nodejs i npm do ścieżki. Czasami widziałem, że instalator dodaje zmienną użytkownika o nazwie PATH - może to być tak, że agent Bamboo decyduje się na odczyt ścieżki użytkownika bez "scalania" go ze ścieżką systemową. Myślę, że warto by było spróbować rzucić to spojrzenie.

+4

Wspaniała sugestia - taka była sztuczka. Przenieśliłem zawartość zmiennej użytkownika do zmiennej systemowej, usunąłem zmienną użytkownika PATH i wszystko znów działa. Nie mogę uwierzyć, że agent Build nie łączy obu zmiennych PATH. W każdym razie, to naprawdę miłe wiedzieć. Dzięki jeszcze raz. –

+1

Uratowałem mój poniedziałek rano, gdzie wszystko było zepsute. Co za bomba czasowa - kilka dni od aktualizacji węzła - ale tylko wtedy, gdy serwer został zrestartowany z powodu aktualizacji systemu Windows, agent uruchomił się ponownie i błąd zaczął się odbywać. – ankhansen