存储库和 Terraform 配置文件准备就绪后,可以为其设计 Cloud Assembly 模板。

  1. 必备条件
  2. 启用 Terraform 运行时版本
  3. 将 Terraform 资源添加到设计中
  4. 部署云模板

必备条件

设置和集成您的版本控制存储库。请参见在 Cloud Assembly 中准备 Terraform 配置

启用 Terraform 运行时版本

可以定义在部署 Terraform 配置时可供用户使用的 Terraform 运行时版本。请注意,Terraform 配置可能还包括内部编码的版本限制。

要创建允许的版本列表,请转到基础架构 > 配置 > Terraform 版本

将 Terraform 资源添加到设计中

创建包含 Terraform 配置的云模板。

  1. Cloud Assembly 中,转到设计 > 云模板,然后单击新建自 > Terraform

    将显示“Terraform 配置”向导。

  2. 按照提示进行操作。
    向导页面 设置
    新建云模板 名称 为设计提供一个标识名称。
    说明 阐明设计的目标。
    项目 选择包含存储 Terraform 配置的存储库集成的项目。
    配置源 存储库 选择存储 Terraform 配置的集成存储库。
    提交

    选择存储库提交,或将该条目留空以使用存储库 HEAD 的 Terraform 配置。

    Bitbucket 限制 - 由于 Bitbucket 存储库服务器配置,可选择的提交数量可能会被截断。

    源目录

    从所创建的存储库结构选择一个子目录。前面设置中显示的示例子目录为 demo1、demo2 和 demo3。

    GitHub Enterprise 限制 - 源目录字段是纯文本字段,您可以在其中手动输入所需的 Terraform 配置子目录的名称。

    完成配置 存储库 验证是否选择了正确的存储库。
    源目录 验证是否选择了正确的目录。
    Terraform 版本 选择部署 Terraform 配置时要运行的 Terraform 运行时版本。
    提供商

    如果 Terraform 配置包括提供商块,请验证此云模板将部署到的提供商和云区域。

    没有提供商不是问题。完成向导后,只需在模板属性中编辑提供商和云区域即可添加或更改部署目标。

    变量 选择要加密的敏感值,例如密码。
    输出 验证 Terraform 配置的输出,该输出可转换为您的设计代码可进一步引用的表达式。
  3. 单击创建

    Terraform 资源将显示在云模板画布中,其中包含反映了要部署的 Terraform 配置的 Cloud Assembly 代码。

添加到设计中的 Terraform 资源

如果需要,可以向云模板中添加其他 Cloud Assembly 资源,以将 Terraform 和非 Terraform 代码组合为混合设计。

注: 更新存储库中的 Terraform 配置不会将所做的更改同步到云模板。自动同步可能会带来安全风险,例如新添加的敏感变量。

要捕获 Terraform 配置更改,请重新运行向导,选择新的提交,然后识别任何新的敏感变量。

部署云模板

部署云模板时,可以在部署的历史记录选项卡中展开事件(例如分配或创建阶段),以查看 Terraform CLI 消息日志。

批准 - 除了预期 Terraform 阶段(如计划、分配或创建)外,Cloud Assembly 还通过批准阶段引入了监管。有关请求批准的详细信息,请参见如何配置 Service Broker 批准策略

日志中的 Terraform CLI 消息

部署后,您会看到一个表示整个 Terraform 组件的外部资源,其中包含 Terraform 创建的单个组件的子资源。父 Terraform 资源控制子资源的生命周期。

Terraform 父资源和子资源