篩選 GitHub 組織網路掛鉤事件 ()AWS CloudFormation - AWS CodeBuild

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

篩選 GitHub 組織網路掛鉤事件 ()AWS CloudFormation

若要使用 AWS CloudFormation 範本來篩選組織 webhook 事件,請使用 AWS CodeBuild 專案的ScopeConfiguration屬性。如需有關全域和組織 GitHub Webhook 的詳細資訊,請參閱GitHub 全球和組織網絡掛鉤

注意

不支援全域網路掛鉤和 GitHub 企業網頁掛鉤。 AWS CloudFormation

範本的下列YAML格式化部分會建 AWS CloudFormation 立四個篩選群組。當一個或全部評估為 true 時,它們共同觸發構建:

  • 第一個過濾器組指定在具有 Git 引 GitHub 用名稱匹配正則表達式的分支上創建或更新提取請求,^refs/heads/main$由沒有帳戶 ID 的用戶12345

  • 第二個篩選群組指定在分支中的檔案上建立的推送請求,並且這些檔案的名稱符合規則表達式 READ_ME,而分支的 Git 參考名稱符合規則表達式 ^refs/heads/.*

  • 第三個篩選群組會指定其 head 提交訊息符合規則運算式 \[CodeBuild\] 的推送請求。

  • 第四個篩選群組會指定 GitHub 「動作」工作流程工作要求,其工作流程名稱與一般運算式相符\[CI-CodeBuild\]

CodeBuildProject: Type: AWS::CodeBuild::Project Properties: Name: MyProject ServiceRole: service-role Artifacts: Type: NO_ARTIFACTS Environment: Type: LINUX_CONTAINER ComputeType: BUILD_GENERAL1_SMALL Image: aws/codebuild/standard:5.0 Source: Type: GITHUB Location: source-location Triggers: Webhook: true ScopeConfiguration: Name: organization-name FilterGroups: - - Type: EVENT Pattern: PULL_REQUEST_CREATED,PULL_REQUEST_UPDATED - Type: BASE_REF Pattern: ^refs/heads/main$ ExcludeMatchedPattern: false - Type: ACTOR_ACCOUNT_ID Pattern: 12345 ExcludeMatchedPattern: true - - Type: EVENT Pattern: PUSH - Type: HEAD_REF Pattern: ^refs/heads/.* - Type: FILE_PATH Pattern: READ_ME ExcludeMatchedPattern: true - - Type: EVENT Pattern: PUSH - Type: COMMIT_MESSAGE Pattern: \[CodeBuild\] - Type: FILE_PATH Pattern: ^src/.+|^test/.+ - - Type: EVENT Pattern: WORKFLOW_JOB_QUEUED - Type: WORKFLOW_NAME Pattern: \[CI-CodeBuild\]