本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
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_CLOSED
RELEASED
、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_request
opened
PULL_REQUEST_CREATED
pull_request
reopened
PULL_REQUEST_REOPENED
pull_request
synchronize
PULL_REQUEST_UPDATED
pull_request
closed
,并且merged
字段为true
PULL_REQUEST_MERGED
pull_request
closed
,并且merged
字段为false
PULL_REQUEST_CLOSED
push
不适用 PUSH
release
已发布 RELEASED
release
预发行 PRERELEASED
workflow_job
queued WORKFLOW_JOB_QUEUED
注意
PULL_REQUEST_REOPENED
事件类型只能与 GitHub和 GitHub 企业服务器一起使用。RELEASED
PRERELEASED
、和WORKFLOW_JOB_QUEUED
事件类型 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。 WORKFLOW_NAME
-
当工作流程名称与正则表达式模式匹配时,Webhook 会触发构建。
WORKFLOW_NAME
筛选器可用于 Action GitHub s 工作流任务队列请求事件。
注意
你可以在仓库的 webhook 设置中找到 webhook 有效负载。 GitHub