前言
公司使用gitlab-runner作為CICD的工具,之前都是把倉庫創建成public的權限,自動化拉取代碼、編譯、打包、上傳穩穩當當一把梭,毫無違和感,突然一天一個同事創建了一個internal權限的倉庫,然后 clone GG 了!?!
解決辦法
大家肯定想的是,配置一個ssh key免密登錄不就好了,然而公司的gitlab只能用http的形式,ssh key免密登錄擱淺。
所以我們只能使用記住密碼的形式
// 配置全局用戶
git config --global user.name "auto-cicd"
git config --global user.email "auto-cicd@company.com"
// 配置存儲密碼
git config --global credential.helper store
// 使用用戶名密碼登錄一次倉庫,使其記住密碼
git clone http://username:password@gitlab.com/auto-cicd/cicd-test.git
大功告成......想太多了~
新的問題
gitlab-runner安裝的時候根據官網的步驟一把梭下來,創建了一個gitlab-runner的用戶,而當前執行命令的不是gitlab-runner用戶,所以clone照樣GG。
而且官網創建用戶的時候,並沒有設置密碼,本來想用gitlab-runner用戶登錄后去執行,然而我並不會怎么登錄...
最終解決
只能使大招了,既然我不知道怎么用gitlab-runner執行,gitlab-runner自己知道啊,所以在gitlab上創建一個測試項目,開啟自動化,把它的自動化腳本配置成上面的代碼即可。
執行一次后就保存密碼了,之后如果修改密碼,在執行一次即可。