此解決方案部署了一個 HTTPS 端點,可用來設定 Webhook,將 Git 連結至 Amazon Web Services (AWS)。設定 Webhook 之後,每次推送提交時,您的儲存庫都會自動擷取、壓縮並上傳至 Amazon Simple Storage System (Amazon S3) 儲存貯體。您可以設定 AWS CodePipeline、AWS CodeBuild 和 AWS CodeDeploy 以使用 S3 儲存貯體作為來源。
-
您將建置的項目
-
部署方式
-
成本和授權
-
您將建置的項目
-
此解決方案設定一個無伺服器 AWS 雲端環境,其中包括以下元件:
- 一個 Amazon API Gateway 端點,用於接收 Git Webhook 請求並將其轉發到 AWS Lambda。
- 一個 AWS Lambda 函數,可處理來自 API 閘道的 Git Webhook 請求,並叫用 AWS CodeBuild 專案。
- 一個 AWS CodeBuild 專案,用於連線至您的 Git 服務,然後擷取、壓縮最新版 Git 儲存庫並將其上傳至 Amazon S3。
- 一個 AWS Key Management Service (KMS) 金鑰,用於加密/解密 CodeBuild 使用的 SSH (安全 Shell) 金鑰,以使用 SSH 連線至您的 Git 儲存庫。部署堆疊後,SSH 金鑰對由 Lambda 支援的 AWS CloudFormation 自訂資源產生。
- 兩個 Amazon S3 儲存貯體:一個用於 Git 儲存庫內容,另一個用於加密的 SSH 金鑰。在您刪除堆疊後,Lambda 支援的 AWS CloudFormation 自訂資源將刪除 S3 儲存貯體的內容。如果需要備份,請在刪除堆疊之前複製 S3 儲存貯體。
-
部署方式
-
若要藉由 AWS 建構 Git 環境,請按照部署指南中的說明操作。部署流程包括以下步驟:
- 如果您尚未擁有 AWS 帳戶,請到 https://aws.amazon.com 註冊。
- 啟動解決方案。部署時間約為 15 分鐘。
- 請依照 Git 服務的說明配置 Git 儲存庫以設定 Webhook。(您必須能夠透過網際網路連線至您的 Git 儲存庫。)
- 設定 AWS 服務以連接至 S3 物件。
- 測試遞交內容。
Amazon 可能會與 AWS 合作夥伴 (與 AWS 在此解決方案上協作的合作夥伴) 分享使用者部署資訊。
-
成本和授權
-
此解決方案部署 AWS Key Management Service (KMS) 金鑰,其每月會產生金鑰儲存和用量費用。(請參閱 AWS Key Management Service 定價。)
API 閘道、Amazon S3、Lambda 和 AWS CodeBuild 會根據您遞交程式碼至連線 Git 儲存庫的頻率收費。(請參閱 Amazon API Gateway 定價、Amazon S3 定價、AWS Lambda 定價和 AWS CodeBuild 定價。)
執行此解決方案時,您須自行支付使用 AWS 服務和任何第三方授權的相關費用。使用此解決方案無須額外付費。
此解決方案包括您能自訂的組態參數。其中某些設定 (例如執行個體類型) 會影響到部署的成本。若要估算成本,請參閱您所使用每項 AWS 服務的定價頁面。定價可能會隨時變更。
提示:在部署解決方案後,建立 AWS Cost and Usage Report 以追蹤相關成本。這些報告會向您帳戶中的 Amazon Simple Storage Service (Amazon S3) 儲存貯體提供各個帳單指標。它們會根據每個月的用量提供成本估算,並在月底彙總資料。如需詳細資訊,請參閱 什麼是 AWS Cost and Usage Report?