執行下列項目的提 GitHub 取要求和 Webhook 篩選器範例 CodeBuild - AWS CodeBuild

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

執行下列項目的提 GitHub 取要求和 Webhook 篩選器範例 CodeBuild

AWS CodeBuild 當源存儲庫是 GitHub時支持網絡掛鉤。這意味著對於將源代碼存儲在存儲 GitHub 庫中的 CodeBuild 構建項目,每次將代碼更改推送到存儲庫時,都可以使用 webhook 重建源代碼。如需 CodeBuild 範例,請參閱AWS CodeBuild 範例

注意

使用 Webhook 時,用戶可能會觸發意外的構建。若要降低此風險,請參閱使用網路掛鉤的最佳做法

第 1 步:使用 GitHub並啟用網絡掛鉤創建構建項目

  1. https://console.aws.amazon.com/codesuite/代碼生成/家中打開 AWS CodeBuild 控制台。

  2. 如果顯示 CodeBuild 資訊頁,請選擇 [建立組建專案]。否則,在瀏覽窗格中,展開 [組建],選擇 [建置專案],然後選擇 [建立組建專案]。

  3. 選擇 Create build project (建立建置專案)

  4. Project configuration (專案組態) 中:

    Project name (專案名稱)

    輸入此組建專案的名稱。每個 AWS 帳戶的組建專案名稱必須是唯一的。您還可以包括構建項目的可選描述,以幫助其他用戶了解該項目的用途。

  5. Source (來源) 中:

    來源提供者

    選擇GitHub。依照指示進行連線 (或重新連線), GitHub 然後選擇 [授權]。

    儲存庫

    在我的 GitHub帳戶中選擇儲存庫

    GitHub 儲存庫

    輸入您URL GitHub 存放庫的。

  6. 主要來源 Webhook 事件中,選取下列項目。

    注意

    僅當您在上一步中選擇了我的 GitHub 帳戶中的存儲庫時,主要源 webhook 事件部分才可見。

    1. 當您建立專案時,請選取 Rebuild every time a code change is pushed to this repository (在每次將程式碼變更推送至此儲存庫時重建)

    2. Event type (事件類型),選擇一或多個事件。

    3. 若要篩選事件觸發組建的時間,請在 Start a build under these conditions (在這些情況下開始組建) 下新增一或多個選用的篩選條件。

    4. 若要篩選何時不觸發事件,請在 Don't start a build under these conditions (在這些情況下不開始組建) 下新增一或多個選用的篩選條件。

    5. 如有需要,請選擇「新增過濾器群組」以新增其他過濾器群組

    如需有關 GitHub webhook 事件類型和篩選器的詳細資訊,請參閱GitHub 網絡掛鉤事件

  7. Environment (環境) 中:

    環境影像

    選擇下列其中一項:

    若要使用由 AWS CodeBuild下列項目管理的 Docker 映像檔:

    選擇 [受管理的映像檔],然後從 [作業系統]、[執行階段]、[映像] 和 [映像檔版本] 中進行選取。若可用,請從 Environment type (環境類型) 進行選擇。

    要使用另一個 Docker 圖像:

    選擇「自訂影像」。對於「環境類型ARM,請選擇「Linux」、「Linux GPU」或「視窗」。如果您選擇 [其他登錄],對於 [外部登錄]URL,請使用格式在 Docker Hub 中輸入 Docker 映像的名稱和標記。docker repository/docker image name如果您選擇 Amazon ECR,請使用 Amazon ECR 存儲庫Amazon ECR 圖像在您的 AWS 帳戶中選擇 Docker 圖像。

    若要使用私人泊塢視窗映像檔:

    選擇「自訂影像」。對於「環境類型ARM,請選擇「Linux」、「Linux GPU」或「視窗」。對於映像登錄,請選擇 [其他登錄],然後輸入私人 Docker 映像ARN的認證。認證必須由 Secrets Manager 建立。如需詳細資訊,請參閱什麼是 AWS Secrets Manager?《AWS Secrets Manager 使用者指南》中。

    服務角色

    選擇下列其中一項:

    • 如果您沒有 CodeBuild 服務角色,請選擇 [新增服務角色]。在角色名稱中,輸入新角色的名稱。

    • 如果您有 CodeBuild 服務角色,請選擇 [現有服務角色]。在角色中ARN,選擇服務角色。

    注意

    使用主控台建立或更新組建專案時,您可以同時建立 CodeBuild 服務角色。根據預設,此角色只能與該建置專案搭配運作。如果您使用主控台將此服務角色與另一個建置專案建立關聯,則會更新此角色以與其他建置專案搭配運作。服務角色最多可以與 10 個組建專案搭配運作。

  8. 建構規格中,執行下列其中一項作業:

    • 選擇「使用建置規格檔案」,在原始程式碼根目錄中使用 buildspec.yml 檔案。

    • 選擇 [插入建置命令] 以使用主控台插入建置命令。

    如需詳細資訊,請參閱 Buildspec 參考

  9. Artifacts (成品) 中:

    類型

    選擇下列其中一項:

    • 如果您不要建立建置輸出成品,則請選擇 No artifacts (無成品)

    • 若要將組建輸出存放在 S3 儲存貯體中,請選擇 Amazon S3,然後執行下列動作:

      • 如果您想要將專案名稱用於建置輸出ZIP檔案或資料夾,請將 [名稱] 保留空白。否則請輸入名稱。根據預設,成品名稱是專案名稱。如果想使用不同的名稱,請在成品名稱方塊中輸入名稱。如果您要輸出ZIP檔案,請包含 zip 副檔名。

      • 針對 Bucket name (儲存貯體名稱),選擇輸出儲存貯體的名稱。

      • 如果您在此程序之前選擇了 [插入建置命令],對於 [輸出檔案],請輸入組建中您要放入組建輸出ZIP檔案或資料夾的檔案位置。針對多個位置,以逗號區隔每個位置 (例如,appspec.yml, target/my-app.jar)。如需詳細資訊,請參閱Buildspec 語法中的 files 描述。

    其他組態

    展開 Additional configuration (其他組態),並適當地設定選項。

  10. 選擇 Create build project (建立建置專案)。在 Review (檢閱) 頁面上,選擇 Start build (開始建置) 來執行建置。

步驟 2:確認網路掛接是否已啟用

  1. https://console.aws.amazon.com/codesuite/代碼生成/家中打開 AWS CodeBuild 控制台。

  2. 在導覽窗格中,選擇 Build projects (建置專案)

  3. 執行以下任意一項:

    • 選擇具有您想要驗證之 Webhook 建置專案的連結,然後選擇 Build details (建置詳細資訊)

    • 選擇您要驗證的 webhook 構建項目旁邊的按鈕,選擇查看詳細信息,然後選擇生成詳細信息選項卡。

  4. 主要來源網路掛接事件中,選擇 Webhook 連URL結。

  5. 在 GitHub 儲存庫的「設定」 頁面的「Webhook」下,確認已選取「提取要求」和「推送」。

  6. 在您的個人資 GitHub 料設置中,在個人設置應用OAuth程序,授權的應用程序下,您應該看到您的應用程序已被授權訪問您選擇的 AWS 區域。