最近Jenkins agent機器經常連不上git,console log裏面說,用戶名密碼驗證失敗。然而,在jenkins > credentials裏面配置的git用戶名密碼明明是正確的,可以成功登錄的。
研究了一番,驚覺是windows credential manager在搗鬼,它藏在Control Panel(控制面板) > User Accounts > Credential Manager那裏。也就是說,曾經在agent機器上安裝及配置過git和git remote repo,於是git的用戶名和密碼就存在了credential manager那裏,而且它會緩存起來。然後jenkins跑job時,就時不時用了windows機器緩存的用戶名密碼,而不是用Jenkins自己配置好的用戶名密碼。坑…
於是我把windows credential manager那裏存的git帳號刪了,覺得還不夠徹底,又把agent機器上的git設置爲每次都要輸入用戶名密碼而不用緩存的。具體設置步驟如下:
cmd裏面輸入
git config --edit --global
然後就會進入vim,點擊i(insert)進入vim編輯模式,在[core]下面增加一行配置akapass=,然後esc退出編輯模式,輸入:wq!保存退出即可。
[user]
......
[core]
akapass=