本页介绍了如何创建手动触发器以在源代码库中构建代码。手动触发器可用于手动调用构建,并能够在运行构建之前在调用时替换定义的替代变量值。您还可以安排手动触发器在特定时间自动运行。
了解如何使用 gcloud CLI 或 请参阅 手动启动构建。
准备工作
-
Enable the Cloud Build API.
- 准备好源代码。
手动触发器
手动触发器允许您设置仅当在连接的代码库上调用触发器时执行的构建。假设您要创建一个流水线,用于将源代码部署到预演环境或生产环境中。您可能想要自动执行工作流,但只想手动执行构建。为了实现此目的,您可以定义手动触发器。
手动触发器允许您通过以下方式手动调用构建:
- 使用指定的分支或标记从托管代码库提取源代码。
- 使用每次执行构建时无需手动传入的替代参数将构建参数化。
- 在调用构建之前,在调用时替换已定义的替代变量值。
如果您想从本地工作目录(而非托管代码库)执行构建,或者希望无需创建触发器即可提交构建,您可以在工作目录中运行以下 gcloud
命令:
gcloud builds submit --config BUILD_CONFIG SOURCE_CODE
其中:
- BUILD_CONFIG 是构建配置文件的路径。
- SOURCE_CODE 是源代码的路径或网址。
要详细了解如何使用 gcloud
命令在本地目录中手动启动构建,请参阅手动启动构建。
创建手动触发器
控制台
要创建手动触发器,请执行以下操作:
打开触发器页面
从页面顶部选择您的项目,然后点击打开。
点击创建触发器。
输入以下触发器设置:
- 名称:触发器的名称。
区域:为触发器选择区域。
- 如果您选择 global(全球)作为区域,Cloud Build 将使用默认池来运行您的 build。
- 如果您选择非全球区域,并且与触发器关联的 build 配置文件指定了专用池,Cloud Build 将使用该专用池运行 build。在这种情况下,您在触发器中指定的区域必须与您创建专用池的区域一致。
- 如果您选择的是非全球区域, 与触发器关联的构建配置文件 不指定专用池; Cloud Build 使用 池,以在同一区域运行构建 作为触发器。
说明(可选):触发器的说明。
事件:选择手动调用来设置触发器,以便构建仅在手动调用触发器时运行。
来源:选择手动触发器运行时要构建的代码库。您可以 将第 1 代或第 2 代指定为来源。
修订版本:选择手动触发时要构建的分支或标记 。
分支:设置一个要在此分支上构建的触发器。必须指定字面量值。目前不支持正则表达式。
标记:设置一个要在此标记上构建的触发器。必须指定字面量值。目前不支持正则表达式。
配置:选择位于远程代码库中的构建配置文件,或创建要用于构建的内嵌构建配置文件。
- 类型:选择要用于构建的配置类型。
- Cloud Build 配置文件(yaml 或 json):为您的配置使用构建配置文件。
- Dockerfile:为您的配置使用
Dockerfile
。
位置:为您的配置指定位置。
- 代码库:如果您的配置文件位于
远程代码库时,请提供您的
构建配置文件,即
Dockerfile
目录或 buildpacks 目录如果您的构建配置类型是Dockerfile
或 buildpack,则需要为生成的映像提供名称,还需要视情况提供构建的超时时间。提供了Dockerfile
或 buildpack 映像名称后,您会看到您的构建将执行的docker build
或pack
命令的预览。 - 内嵌:如果您选择 Cloud Build 配置文件(yaml 或 json)作为配置选项,您可以内嵌指定构建配置。点击打开编辑器,使用 YAML 或 JSON 语法在 Google Cloud 控制台中编写您的构建配置文件。点击完成以保存您的构建配置。
- 代码库:如果您的配置文件位于
远程代码库时,请提供您的
构建配置文件,即
- 类型:选择要用于构建的配置类型。
点击创建以创建手动触发器。
gcloud
如需查看完整的标志列表,请参阅有关如何创建手动触发器的 gcloud
参考文档。
运行手动触发器
控制台
如需使用 Google Cloud 控制台运行手动触发器,请执行以下操作:
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
是与替换变量关联的值。
如需按时间表运行手动触发器,请参阅安排构建。