在源代码库中手动构建代码

本页介绍了如何创建手动触发器以在源代码库中构建代码。手动触发器可用于手动调用构建,并能够在运行构建之前在调用时替换定义的替代变量值。此外,您还可以安排手动触发器在特定时间自动运行。

如需了解如何使用 gcloud CLI 或 Cloud Build API 手动启动构建,请参阅手动启动构建

准备工作

  • 启用 Cloud Build API。

    启用 API

  • 准备好源代码。

手动触发器

手动触发器允许您设置仅当在连接的代码库上调用触发器时执行的构建。假设您要创建一个流水线,用于将源代码部署到预演环境或生产环境中。您可能想要自动执行工作流,但只想手动执行构建。为了实现此目的,您可以定义手动触发器。

手动触发器允许您通过以下方式手动调用构建:

  • 使用指定的分支或标记从托管代码库提取源代码。
  • 使用每次执行构建时无需手动传入的替代参数将构建参数化。
  • 在调用构建之前,在调用时替换已定义的替代变量值。

如果要从本地工作目录(而不是托管代码库)执行构建,或者想要提交构建而不创建触发器,可以在工作目录中运行以下 gcloud 命令:

gcloud builds submit --config BUILD_CONFIG SOURCE_CODE

其中:

  • BUILD_CONFIG 是构建配置文件的路径。
  • SOURCE_CODE 是源代码的路径或网址。

要详细了解如何使用 gcloud 命令在本地目录中手动启动构建,请参阅手动启动构建

创建手动触发器

控制台

要创建手动触发器,请执行以下操作:

  1. 打开触发器页面

    打开“触发器”页面

  2. 从页面顶部选择您的项目,然后点击打开

  3. 点击创建触发器

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

    • 名称:触发器的名称。
    • 区域:为触发器选择区域

      • 如果选择 global 作为区域,Cloud Build 将使用默认池来运行构建。
      • 如果您选择非全球区域,并且与触发器关联的构建配置文件指定了专用池,则 Cloud Build 会使用专用池来运行构建。在这种情况下,您在触发器中指定的区域必须与创建专用池的区域一致。
      • 如果您选择非全球区域,并且与触发器关联的构建配置文件指定专用池,则 Cloud Build 会使用默认池在触发器所在的区域中运行构建。
    • 说明(可选):触发器的说明。

    • 事件:选择手动调用,将触发器设置为仅在手动调用触发器时运行构建。

    • 来源:选择要在手动触发器运行时构建的代码库。您可以将第 1 代第 2 代指定为来源。

    • 修订版本:选择要在手动触发器运行时构建的分支或标记。

    • 分支:设置一个要在此分支上构建的触发器。必须指定字面量值。目前不支持正则表达式。

    • 标记:设置一个要在此标记上构建的触发器。必须指定字面量值。目前不支持正则表达式。

    • 配置:选择位于远程代码库中的构建配置文件,或创建要用于构建的内嵌构建配置文件。

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

        • 代码库:如果您的配置文件位于远程代码库中,请提供构建配置文件Dockerfile 目录或 buildpack 目录的位置。如果您的构建配置类型是 Dockerfile 或 buildpack,则需要为生成的映像提供名称,还需要视情况提供构建的超时时间。提供了 Dockerfile 或 buildpack 映像名称后,您会看到您的构建将执行的 docker buildpack 命令的预览。
        • 内嵌:如果您选择 Cloud Build 配置文件(yaml 或 json)作为配置选项,则可以以内嵌方式指定构建配置。点击打开编辑器,使用 YAML 或 JSON 语法在 Google Cloud 控制台中编写构建配置文件。点击 Done 以保存您的构建配置。
  5. 点击创建以创建手动触发器。

gcloud

如需查看完整的标志列表,请参阅 gcloud 参考文档,了解如何创建手动触发器

运行手动触发器

控制台

如需使用 Google Cloud 控制台运行手动触发器,请执行以下操作:

  1. 在 Google Cloud 控制台中打开触发器页面。

    打开“触发器”页面

  2. 在列表中找到您的触发器。

  3. 点击运行触发器

    点击运行触发器后,您将在右侧看到运行触发器窗格。如果指定了分支名称、标记名称或替代变量等字段,则可以在调用时替换这些字段。

    如果您为替代变量指定了新的变量值,请点击运行触发器以执行构建。

    如需按计划手动运行触发器,请参阅安排构建时间

gcloud

如需使用 gcloud 命令行工具运行手动触发器,请运行以下命令:

      gcloud builds triggers run TRIGGER_NAME \
         --region=REGION \
         --branch=BRANCH_NAME \
         --substitutions=SUBSTITUTION_VAR=SUBSTITUTION_VALUE

其中:

  • TRIGGER_NAME 是触发器的名称。
  • REGION 是触发器的区域
  • BRANCH_NAME 是您的分支的名称。您还可以使用 --tag 指定标记,或使用 --sha 指定提交 ID。
  • [可选]SUBSTITUTION_VAR 是替换值的变量名称。
  • [可选] SUBSTITUTION_VALUE 是与替换变量关联的值。

如需按计划运行手动触发器,请参阅安排构建

后续步骤