jenkins中的環境變量
jenkins中的環境變量
- 主機中的系統環境變量
- Master/Slave節點設置的環境變量
- Job執行時的環境變量(http://ip:port/jenkins/env-vars.html/、參數化構建時的參數也會被設置為環境變量、一些插件提供的環境變量)
其中,如果環境變量名稱相同,后者會覆蓋前者
這些環境變量可以在Shell或Batch腳本中被使用,以JOB_NAME環境變量為例:
- 在Shell中:$JOB_NAME
- 在Batch中:%JOB_NAME%
- 在Ant插件中:$JOB_NAME
- 在Ant的build.xml中:${JOB_NAME}
在使用Jenkins的過程中,多次遇到Jenkins job中無法獲取Slave上的環境變量的情況
例如,在Jenkins slave上安裝了python,但在Jenkins job中使用python命令時,出現如下提示
'python'不是內部或外部命令,也不是可運行的程序或批處理文件
而實際上Slave機器的環境變量PATH中已追加了python的環境變量,但是Jenkins job中無法讀取到
解決方法:
- 使用絕對路徑的命令
- 在Jenkins的job中設置環境變量參數
- 在Jenkins的節點配置中設置環境變量
當然,個人感覺其中最友好的方式是 在Jenkins的節點配置中設置環境變量
例如:可以設置PATH的值為$PATH,這樣PATH就可以讀取到slave機器上的配置
參考:
本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!