Cloud Build 概览

Cloud Build 是一项在 Google Cloud Platform 的基础架构上执行构建的服务。

Cloud Build 可以从各种代码库或云存储空间导入源代码,根据您的规范执行构建,并生成诸如 Docker 容器或 Java 归档的软件工件。

构建配置和构建步骤

您可以编写构建配置,以向 Cloud Build 提供有关执行什么任务的说明。可以将构建配置为提取依赖项,运行单元测试、静态分析和集成测试,并使用 docker、gradle、maven、bazel 和 gulp 等构建工具创建软件工件。

Cloud Build 将构建作为一系列构建步骤执行,其中的每个构建步骤都在 Docker 容器中运行。执行构建步骤类似于在脚本中执行命令。

您可以使用 Cloud Build 和 Cloud Build 社区提供的构建步骤,也可以编写自己的自定义构建步骤:

每个构建步骤都通过其连接到本地 Docker 网络(名为 cloudbuild)的容器运行。这使构建步骤可以相互通信并共享数据。

您可以在 Cloud Build 中使用标准 Docker Hub 映像,例如 UbuntuGradle

启动构建

您可以使用 gcloud 命令行工具或 Cloud Build API 在 Cloud Build 中手动启动构建,也可以使用 Cloud Build 的构建触发器功能,创建为响应代码更改而启动新构建的自动持续集成/持续交付 (CI/CD) 工作流。

您可以将构建触发器与许多代码库(包括 Cloud Source Repositories、GitHub、Bitbucket)集成在一起。

查看构建结果

您可以使用 gcloud 工具或 Cloud Build API 查看构建结果,还可以转到 Cloud Console 中 Cloud Build 部分的构建记录页面,其中显示了 Cloud Build 执行的每个构建的详细信息和日志。如需相关说明,请参阅查看构建结果

构建的工作原理

以下步骤描述了一般而言的 Cloud Build 构建生命周期:

  1. 准备应用代码及任何所需资源。
  2. 创建 YAML 或 JSON 格式的构建配置文件,其中包含 Cloud Build 的说明。
  3. 将构建提交到 Cloud Build。
  4. Cloud Build 根据您提供的构建配置执行构建。
  5. 如果适用,构建的所有映像都将推送到 Container Registry。Container Registry 可在 Google Cloud 上提供安全、私密的 Docker 映像存储空间。

Docker

Cloud Build 使用 Docker 执行构建。对于每个构建步骤,Cloud Build 都会将 Docker 容器作为 docker run 的实例执行。目前,Cloud Build 运行的是 Docker 引擎版本 19.03.8。

Cloud Build 接口

您可以通过 Google Cloud Console、gcloud 命令行工具或 Cloud Build 的 REST API 使用 Cloud Build。

在 Cloud Console 中,您可以通过构建记录页面查看 Cloud Build 构建结果,并通过构建触发器进行自动构建

您可以使用 gcloud 工具创建和管理构建,并可以运行命令来执行提交构建列出构建取消构建等任务。

您可以使用 Cloud Build REST API 请求构建。

与其他 Cloud Platform API 一样,您必须使用 OAuth2 授予访问权限。获得访问授权后,您可以使用 API 启动新构建、查看构建状态和详情、列出每个项目的构建并取消当前正在进行的构建。

如需了解详情,请参阅 API 文档

在本地运行构建

如果您想在将构建提交到 Cloud Build 之前对其执行测试,可以使用 cloud-build-local 工具在本地运行构建。如需了解此工具的用法,请参阅本地构建和调试页面。

后续步骤