使用 Cloud de Confiance 控制台创建和管理自定义操作系统映像流水线

直接在Cloud de Confiance 控制台中配置并启动 Image Builder 流水线。 Cloud de Confiance 控制台提供了一个交互式界面,您可以在其中指定基础映像来源、输出目的地、自定义步骤和执行触发器。

准备工作

所需的角色

如需获得使用 Cloud de Confiance 控制台创建和管理映像自定义流水线所需的权限,请让您的管理员为您授予项目的以下 IAM 角色:

如需详细了解如何授予角色,请参阅管理对项目、文件夹和组织的访问权限。

您也可以通过自定义角色或其他预定义角色来获取所需的权限。

创建和管理流水线

在 Cloud de Confiance 控制台中,您可以创建新的自定义操作系统映像流水线、修改现有配置、复制现有流水线,或在不再需要流水线时将其删除。

创建流水线

如需使用 Cloud de Confiance 控制台创建自定义操作系统映像流水线,请完成以下步骤:

  1. 在 Cloud de Confiance 控制台中,前往映像页面。

    转到“映像”

  2. 点击 Image Builder 前往 Image Builder 首页。

  3. 在区域选择器中,选择您要在其中创建流水线的区域。

  4. 点击创建流水线。

  5. 在流水线设置部分,配置核心流水线详细信息:

    • 名称:为流水线输入一个唯一的名称。
    • 说明:(可选)输入流水线的说明。
    • 区域:为流水线选择 Cloud de Confiance 区域。 Image Builder 在提供 Cloud Build 的每个区域中均受支持。
    • 服务账号:选择配置了所需 IAM 权限的服务服务账号,或创建新的服务账号。
    • 配置源:选择以下方法之一,以指定自定义配置和脚本的存储位置:
      • 与代码库集成:选择此选项可从 Git 代码库检索自定义方案和脚本。由于代码库的 imagebuilder.yaml 文件定义了源基本映像、构建区域、自定义步骤和目标映像设置,因此控制台会直接进入触发器。配置以下字段:
        • 代码库:选择已连接的代码库,或点击关联代码库以连接 GitHub、GitLab 或 Bitbucket 代码库。
        • 映像构建器配置的路径:输入代码库中自定义配方文件的相对路径,例如 imagebuilder.yaml。
        • Cloud Storage 文件夹:点击浏览以选择用于上传流水线日志和 build 制品的 Cloud Storage 文件夹。
      • 在 Google Cloud Storage 中存储脚本:选择此替代方案可在控制台界面中直接配置基础映像、目标映像详细信息和自定义步骤。控制台会将脚本保存到 Cloud Storage,并引导您完成整个分步向导。配置以下字段:
        • 自定义脚本文件夹:点击浏览,选择用于存储自定义脚本的 Cloud Storage 文件夹。
    • Artifact Registry:(可选)如果您想上传目标映像归档并生成加密的 SLSA build 出处证明,请从 Artifact Registry 代码库列表中选择一个通用代码库。如需了解详情,请参阅验证图片来源。
  6. 点击下一步,根据您选择的配置来源继续完成其余的配置面板:

    • 如果您选择了“与代码库集成”:

      代码库的 imagebuilder.yaml 配方定义了源基础映像、目标映像设置和自定义步骤。控制台会跳过手动输入,直接进入触发器:

      1. 在触发器部分中,配置流水线的运行时间:
        • 按时间表运行:使用 cron 语法指定重复性时间表。
        • 在代码库事件发生时运行:在发生代码库事件(例如推送到分支、推送新标记或拉取请求)时自动触发 build,并指定分支或标记过滤模式。
      2. 点击下一步,继续前往摘要部分。
      3. 检查流水线配置,然后点击创建。
    • 如果您选择将脚本存储在 Google Cloud Storage 中:

      1. 在源映像详细信息部分,指定基础操作系统映像:
        • 使用映像系列:选择公共操作系统系列,例如 Container-Optimized OS 或 Ubuntu。对于每个 build,流水线都会自动选择相应系列中最新的未弃用映像。
        • 使用现有映像:选择特定的操作系统映像。
      2. 点击下一步,继续前往目标映像详情部分:
        • 为生成的自定义操作系统映像输入名称。
        • (可选)指定映像系列、说明、资源标签和客户管理的加密密钥 (CMEK)。
      3. 点击下一步,进入自定义部分:
        • 选择自定义操作,以添加、修改或重新排序离散的自定义步骤,例如安装软件包或运行内嵌 shell 脚本。
        • 选择添加 YAML,直接在 YAML 中编写或粘贴原始配方 steps。
        • (可选)在高级配置下,选择要用于运行 build 作业的工作器和测试虚拟机的特定地区、机器类型或预留。不支持裸金属机器类型。您还可以在配方的 infrastructureConfig 中指定自定义 VPC 网络、子网或外部 IP 设置,例如 ephemeral 或 none。
      4. 点击下一步,进入触发器部分:
        • 选择按计划运行以定义自动定期运行时间表,或保持未选中状态以进行手动执行。
      5. 点击下一步,继续前往摘要部分。
      6. 检查流水线配置,然后点击创建。

创建流水线后:

  • 如果您未配置自动触发器,可以手动运行流水线:在 Image Builder 流水线列表中,点击流水线旁边的 更多操作 > 运行。
  • 如果您配置了按计划运行或根据代码库事件运行,则当满足触发条件或时间表时,流水线会自动运行。

修改流水线

如需修改现有的 Image Builder 流水线,请完成以下步骤:

  1. 在 Cloud de Confiance 控制台中,前往映像页面。

    转到“映像”

  2. 点击 Image Builder 以查看流水线列表。

  3. 在要修改的流水线旁边,依次点击 更多操作 > 修改。

  4. 根据需要更新流水线设置、配置源、目标映像详细信息、自定义步骤或触发器设置。

  5. 点击保存。

复制流水线

如需通过复制现有配置来创建新流水线,请完成以下步骤:

  1. 在 Cloud de Confiance 控制台中,前往映像页面。

    转到“映像”

  2. 点击 Image Builder 以查看流水线列表。

  3. 在要复制的流水线旁边,依次点击 更多操作 > 复制。

  4. 在流水线创建表单中,查看从原始流水线复制的预填充参数。您可以修改流水线名称字段,以指定新的唯一名称。

  5. 根据需要更新任何流水线参数或设置。

  6. 点击创建。

删除流水线

删除流水线后,Image Builder 会停止未来自动运行,并永久移除流水线配置。删除流水线不会删除您之前创建的任何自定义操作系统映像、Artifact Registry 制品或 Cloud Storage 存储桶。

如需删除 Image Builder 流水线,请完成以下步骤:

  1. 在 Cloud de Confiance 控制台中,前往映像页面。

    转到“映像”

  2. 点击 Image Builder 以查看流水线列表。

  3. 在要删除的流水线旁边,依次点击 更多操作 > 删除。

  4. 在确认对话框中,点击删除以永久移除流水线。

验证和监控 build

如需跟踪 build 流水线的进度,请完成以下步骤:

  1. 在 Cloud de Confiance 控制台中,前往 Cloud Build 页面。

    转至 Cloud Build

  2. 在导航菜单中,点击历史记录可查看有效或已完成的作业。

  3. 在构建列表中,点击相应构建的构建 ID 以检查容器运行日志。日志会显示工作器虚拟机中执行的步骤,例如系统软件包更新或自定义 shell 命令,然后显示测试虚拟机的验证测试结果和最终输出注册。

后续步骤