Bitbucket Webhook 事件 - Amazon CodeBuild
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

Bitbucket Webhook 事件

您可以使用 Webhook 筛选条件组来指定哪个 Bitbucket Webhook 事件触发构建。例如,您可以指定仅在对特定分支做出更改时触发构建。

您可以创建一个或多个 Webhook 筛选条件组,来指定哪些 Webhook 事件触发构建。如果任何筛选条件组评估为 true(即组中的所有筛选条件都评估为 true),则会触发构建。创建筛选条件组时,应指定:

事件

对于 Bitbucket,您可以选择以下一个或多个事件:

  • PUSH

  • PULL_REQUEST_CREATED

  • PULL_REQUEST_UPDATED

  • PULL_REQUEST_MERGED

  • PULL_REQUEST_CLOSED

webhook 的事件类型位于其在 X-Event-Key 字段中的标头中。下表显示了 X-Event-Key 标头值如何映射到事件类型。

注意

如果您创建使用 PULL_REQUEST_MERGED 事件类型的 Webhook 筛选条件组,则必须在 Bitbucket Webhook 设置中启用 merged 事件。如果您创建使用 PULL_REQUEST_CLOSED 事件类型的 webhook 筛选条件组,则还必须在 Bitbucket webhook 设置中启用 declined 事件。

X-Event-Key 标头值 事件类型
repo:push PUSH
pullrequest:created PULL_REQUEST_CREATED
pullrequest:updated PULL_REQUEST_UPDATED
pullrequest:fulfilled PULL_REQUEST_MERGED
pullrequest:rejected PULL_REQUEST_CLOSED

对于 PULL_REQUEST_MERGED,如果拉取请求与压缩策略合并且拉取请求分支已关闭,则原始的拉取请求提交将不再存在。在这种情况下,CODEBUILD_WEBHOOK_MERGE_COMMIT 环境变量包含压缩后的合并提交的标识符。

一个或多个可选筛选条件

使用正则表达式来指定筛选条件。对于触发构建的事件,组内与其关联的每个筛选条件都必须评估为 True。

ACTOR_ACCOUNT_ID(控制台中的 ACTOR_ID

当 Bitbucket 账户 ID 与正则表达式模式匹配时,Webhook 事件会触发构建。此值显示在 Webhook 筛选条件负载中的 actor 对象的 account_id 属性中。

HEAD_REF

当头部引用与正则表达式模式(例如 refs/heads/branch-namerefs/tags/tag-name)匹配时,Webhook 事件会触发构建。HEAD_REF 筛选条件将评估分支或标签的 Git 引用名称。分支或标签名称显示在 Webhook 负载的 push 对象中的 new 对象的 name 字段中。对于拉取请求事件,分支名称显示在 Webhook 负载中的 source 对象的 branch 中的 name 字段中。

BASE_REF

当基础引用与正则表达式模式匹配时,Webhook 事件会触发构建。BASE_REF 筛选条件仅处理拉取请求事件(例如,refs/heads/branch-name)。BASE_REF 筛选条件评估分支的 Git 引用名称。分支名称显示在 branch 对象的 name 字段中,该对象位于 Webhook 负载的 destination 对象中。

FILE_PATH

当更改的文件的路径与正则表达式模式匹配时,Webhook 会触发构建。

COMMIT_MESSAGE

当 HEAD 提交消息与正则表达式模式匹配时,Webhook 会触发构建操作。

WORKFLOW_NAME

当工作流名称与正则表达式模式匹配时,Webhook 会触发构建操作。

注意

您可以在 Bitbucket 存储库的 webhook 设置中找到 webhook 负载。