2015-04-20 45 views
0

我們有一個在Jenkins從節點(Windows機器)上運行的構建作業。 作業使用從站上的Windows中定義的環境變量。Jenkins:主節點在從節點上看不到更改的環境變量

現在,我們必須更改從站上的一些環境變量的值。 當我們在從機上調用'set'時,它會正確顯示已更改的值。

但是,當我們在Jenkins上開始構建作業並在那裏調用'set'(Windows批處理命令)時,日誌仍然顯示環境變量的舊值! 當我們轉到'Jenkins'>'節點'>''系統信息'時,我們會看到同樣的錯誤值。

你知道是什麼原因導致問題及其如何修復?

謝謝。

回答

1

環境變量會在創建子環境時傳播到子環境。如果您更改了機器上的環境變量,那麼在此刻之後只有新進程會產生新的環境變量。

如果您在更改變量後未在該機器上重新啓動Jenkins Slave進程,那麼它將不會被拾取。

0

那麼,啓動Jenkins slave進程並沒有幫助。在離線模式下發送從站,然後回到在線狀態也沒有幫助。

首先,當我們重新啓動Jenkins主進程時,slave上envvars的更改生效,master顯示正確的envvar值。但啓動Jenkins應用程序不是一個合適的解決方案...