jenkins建構job,執行go test指令報如下圖的timeout錯誤
從報錯資訊中可以看出是因為下載下傳依賴包逾時
解決方法:
go env檢視go環境變量
GOSUMDB=sum.golang.org,用于驗證包的有效性,但是由于這個網站被牆了,是以報timeout
可以通過如下指令關閉:
go env-w GOSUMDB=off
也可以設定 GOSUMDB="sum.golang.google.cn", 這個是專門為國内提供的sum 驗證服務
或者通過修改環境變量檔案.bash_profile
- vi .bash_profile
- 更改
- source .bash_profile
再次go env檢視,改變已生效
改完後,在視窗和jenkins job都試一下(執行go test指令),結果視窗可以,jenkins job依然不行。
真可謂是一坑剛平,一坑又起,因為在slave機器上修改了環境變量檔案.bash_profile,是不是jenkins job沒有感覺到環境變量的更改?
在shell腳本頭部加入一行source /Users/xes/.bash_profile,及在執行go test指令前先加載一下環境變量
再次建構jenkins job,成功!