本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
筛选 GitHub 组织 webhook 事件 ()AWS CloudFormation
要使用 AWS CloudFormation 模板筛选组织 webhook 事件,请使用 AWS CodeBuild
项目的ScopeConfiguration
属性。有关全局和组织 GitHub webhook 的更多信息,请参阅GitHub 全球和组织 webhook。
注意
不支持全局 webhook 和 GitHub 企业 Webhook。 AWS CloudFormation
AWS CloudFormation 模板YAML的以下格式部分创建了四个筛选器组。当一个或所有评估结果为 true 时,它们共同触发构建:
-
第一个筛选器组指定
^refs/heads/main$
由没有账户 ID 的 GitHub 用户在具有与正则表达式匹配的 Git 引用名称的分支上创建或更新拉取请求12345
。 -
第二个筛选条件组使用与正则表达式
^refs/heads/.*
匹配的 Git 引用名称,指定在名称与正则表达式READ_ME
匹配的文件上创建的推送请求。 -
第三个筛选条件组指定一个推送请求,其中包含与正则表达式
\[CodeBuild\]
匹配的 HEAD 提交消息。 -
第四个筛选器组指定 Act GitHub ions 工作流任务请求,其工作流程名称与正则表达式匹配
\[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\]