本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
GitHub webhook 事件
您可以使用 webhook 筛选器组来指定哪些 GitHub Webhook 事件会触发构建。例如,您可以指定仅在对特定分支做出更改时触发构建。
您可以创建一个或多个 Webhook 筛选条件组,来指定哪些 Webhook 事件触发构建。如果任何筛选条件组评估为 true(即组中的所有筛选条件都评估为 true),则会触发构建。创建筛选条件组时,应指定:
- 事件
-
对于 GitHub,您可以选择以下一个或多个事件:
PUSH、PULL_REQUEST_CREATED、PULL_REQUEST_UPDATED、PULL_REQUEST_REOPENED、PULL_REQUEST_MERGED、PULL_REQUEST_CLOSEDRELEASED、PRERELEASED、和WORKFLOW_JOB_QUEUED。webhook 事件类型在 webhook 负载中的X-GitHub-Event标头中。在X-GitHub-Event标头中,您可能会看到pull_request或push。对于拉取请求事件,类型在 webhook 事件负载的action字段中。下表显示了X-GitHub-Event标头值和 webhook 拉取请求负载action字段值如何映射到可用的事件类型。X-GitHub-Event标头值Webhook 事件负载 action值事件类型 pull_requestopenedPULL_REQUEST_CREATEDpull_requestreopenedPULL_REQUEST_REOPENEDpull_requestsynchronizePULL_REQUEST_UPDATEDpull_requestclosed,并且merged字段为truePULL_REQUEST_MERGEDpull_requestclosed,并且merged字段为falsePULL_REQUEST_CLOSEDpush不适用 PUSHreleasereleased RELEASEDreleaseprereleased PRERELEASEDworkflow_jobqueued WORKFLOW_JOB_QUEUED注意
PULL_REQUEST_REOPENED事件类型只能与 GitHub和 GitHub 企业服务器一起使用。RELEASED和PRERELEASED事件类型 GitHub 只能与一起使用。有关WORKFLOW_JOB_QUEUED的更多信息,请参阅教程:配置 CodeBuild托管的 GitHub操作运行器。 - 一个或多个可选筛选条件
-
使用正则表达式来指定筛选条件。对于触发构建的事件,组内与其关联的每个筛选条件都必须评估为 True。
ACTOR_ACCOUNT_ID(控制台中的ACTOR_ID)-
当 GitHub 或 GitHub企业服务器帐户 ID 与正则表达式模式匹配时,Webhook 事件会触发构建。此值在 webhook 负载中的
sender对象的id属性中。 HEAD_REF-
当头部引用与正则表达式模式(例如
refs/heads/branch-name和refs/tags/tag-name)匹配时,Webhook 事件会触发构建。对于推送事件,引用名称在 Webhook 负载中的ref属性中。对于拉取请求事件,分支名称在 Webhook 负载中的head对象的ref属性中。 BASE_REF-
当基本引用与正则表达式模式(例如
refs/heads/branch-name)匹配时,Webhook 事件会触发构建。BASE_REF筛选器只能与拉取请求事件一起使用。分支名称在 webhook 负载中的base对象的ref属性中。 FILE_PATH-
当更改的文件的路径与正则表达式模式匹配时,Webhook 会触发构建。
FILE_PATH筛选器可用于 GitHub 推送和拉取请求事件以及 GitHub企业服务器推送事件。它不能用于 GitHub企业服务器拉取请求事件。 COMMIT_MESSAGE-
当 HEAD 提交消息与正则表达式模式匹配时,Webhook 会触发构建操作。
COMMIT_MESSAGE筛选器可用于 GitHub 推送和拉取请求事件以及 GitHub企业服务器推送事件。它不能用于 GitHub企业服务器拉取请求事件。 TAG_NAME-
当发布的标签名称与正则表达式模式匹配时,webhook 会触发构建操作。
TAG_NAME过滤器可用于 GitHub 已发布和预发布的请求事件。 RELEASE_NAME-
当发布名称与正则表达式模式匹配时,webhook 会触发构建操作。
RELEASE_NAME过滤器可用于 GitHub 已发布和预发布的请求事件。 REPOSITORY_NAME-
当存储库名称与正则表达式模式匹配时,webhook 会触发构建操作。
REPOSITORY_NAME过滤器只能用于 GitHub 全局或组织 webhook。 ORGANIZATION_NAME-
当组织名称与正则表达式模式匹配时,Webhook 会触发构建。
ORGANIZATION_NAME过滤器只能用于 GitHub 全局 webhook。 WORKFLOW_NAME-
当工作流名称与正则表达式模式匹配时,Webhook 会触发构建操作。
WORKFLOW_NAME筛选器可以用于 Acti GitHub ons 工作流程任务队列请求事件。
注意
你可以在仓库的 webhook 设置中找到 webhook 有效负载。 GitHub