从 Bitbucket Cloud 构建代码库

借助 Cloud Build,您可以创建触发器以从代码库进行构建 托管在 Bitbucket Cloud 上, 让您可以执行构建来响应各种事件,例如提交推送或 合并与 Bitbucket Cloud 代码库关联的请求。

本页介绍了如何在 Bitbucket Cloud 实例。详细了解 Cloud Build 触发器Cloud Build 代码库

准备工作

  • 启用 Cloud Build and Secret Manager API。

    启用 API

创建 Bitbucket Cloud 触发器

按照以下步骤创建 Bitbucket Cloud 触发器:

控制台

  1. 打开触发器页面

    打开“触发器”页面

  2. 选择您的 Google Cloud 项目,然后点击 打开

  3. 点击创建触发器

  4. 输入以下触发器设置:

    • 名称:触发器的名称。

    • 区域:为触发器选择区域

      • 如果与触发器关联的构建配置文件 指定专用池时,Cloud Build 会使用专用池 运行 build。在这种情况下,您在触发器中指定的区域必须与创建专用池的区域一致。
      • 如果与触发器关联的构建配置文件 不指定专用池; Cloud Build 使用 池,以在同一区域运行构建 作为触发器。
    • 说明(可选):触发器的说明。

    • 事件:选择用于调用触发器的代码库事件。

      • 推送到分支:设置触发器,以便基于对特定分支的提交启动构建。

      • 推送新标记:将触发器设置为以基于包含特定标记的提交启动构建。

      • 拉取请求:设置触发器以启动构建 拉取请求的提交

    • 来源:选择第 2 代作为来源。

      • 代码库:从可用代码库列表中,选择 存储库如需关联新的代码库,请参阅连接到 Bitbucket Cloud Repository

      • 分支标记:指定要匹配分支或标记值的正则表达式。如需了解可接受的正则表达式语法,请参阅 RE2 语法

      • 评论控制:如果您选择了 Pull request 作为活动时,请选择下列选项之一, 控制构建是否由触发器自动执行:

        • (所有者和协作者除外):拉取 请求是由代码库所有者或协作者创建或更新的; 触发器会自动执行构建如果外部 贡献者启动相应操作后, 所有者或协作者对拉取请求添加注释 /gcbrun

        • 必需:当 那么只有在成为所有者或贡献者之后才会执行构建, 协作者评论拉取请求 /gcbrun。build 都会在系统每次更改拉取请求时执行。

        • 非必需:当 贡献者,构建将由触发器自动执行。

    • 配置:选择位于您的代码库中的构建配置文件,或在触发器上以内嵌方式配置构建。

    • 类型:选择要用于构建的配置类型。

      • Cloud Build 配置文件(yaml 或 json):为您的配置使用构建配置文件。
      • Dockerfile:为您的配置使用 Dockerfile
    • 位置:为您的配置指定位置。

      • 代码库:如果您的配置文件位于 请提供您的 构建配置文件Dockerfile 目录和所生成映像的名称。如果您的配置是 Dockerfile,则还可以选择提供构建的超时时间。提供 Dockerfile 和映像名称后,您会看到 您构建的 docker build 命令的预览。

      • 内嵌:如果您选择了 Cloud Build 配置文件(yaml 或 json)作为配置选项,则可以指定内嵌构建配置。点击 Open Editor(打开编辑器),在 使用 YAML 或 JSON 语法创建 Google Cloud 控制台。点击完成以保存您的构建配置。

  5. 点击创建以创建您的 Bitbucket Cloud 触发器。

gcloud

使用以下命令创建代码库推送事件触发器:

gcloud builds triggers create bitbucket-cloud \
    --name=TRIGGER_NAME \
    --repository=\
    projects/PROJECT_ID/locations/REGION/connections/CONNECTION_NAME/repositories/REPO_NAME \
    --branch-pattern=".*" --build-config="CONFIG_NAME" \
    --region=REGION

其中:

  • TRIGGER-NAME 是您要为 构建触发器。
  • PROJECT_ID 是您的 Google Cloud 项目 ID。
  • REGION 是触发器的区域
  • CONNECTION_NAME 是主机连接的名称。
  • REPO_NAME 是已连接代码库的名称 Bitbucket Cloud 中的资源。
  • CONFIG_NAME 是配置架构的名称 文件。

创建触发器后,Cloud Build 将监听所有推送事件 。当您将任何提交推送到代码库时 调用。您可以 构建记录页面中查看构建结果

数据共享

Cloud Build 发送到 Bitbucket Cloud 的数据有助于您 触发器,并查看 Bitbucket Cloud 代码库的构建结果。

以下数据在 Cloud Build 和 Bitbucket 之间共享 云主机:

  • Google Cloud 项目 ID
  • 触发器名称

后续步骤