2017-06-28 174 views
1

在啓動時是否有一種將git存儲庫(當前使用CloudCommit來簡化權限)克隆到EC2實例的最佳實踐或標準化方法?在啓動AWS EC2實例時使用cloud-init克隆git repo

我使用的用戶數據部分使用具有云的init腳本:

runcmd: 
- git clone https://git-codecommit.us-west-2.amazonaws.com/v1/repos/myrepo 

但我的雲的init-output.log文件顯示git的命令無法連接到服務器。當我嘗試在cloud-init腳本之外執行此操作時,得到:

The config profile (default) could not be found 

作爲錯誤消息。所以我假設運行userdata init腳本的用戶沒有設置aws cli config配置文件,因此無法運行git克隆?什麼是正確的方法來做到這一點?我的EC2實例具有允許從CodeCommit讀取的角色,因此我不需要SSH密鑰。

回答

1

我想補充一個也許有幫助說明,AWS文件提出以下建議git的配置:

git config --global credential.helper '!aws codecommit credential-helper [email protected]' git config --global credential.UseHttpPath true

我發現,使用--system的混帳配置命令的工作比使用要好得多 - 全局,這需要設置$ HOME(它不是,順便說一句)。這將設置整個系統的配置,但是..所以任何用戶都可以使用EC2實例承擔角色的權限從CodeCommit repo運行拉。它可能不是你所需要的,但在我的情況下它運行良好(使用codecommit來提取配置信息)。