Cloud Assembly 支持与各种 Git 存储库集成,以便您可以在源控制下管理 VMware Cloud Templates 和操作脚本。此功能可简化对部署流程的审计和财务责任落实。

Cloud Assembly 支持不同形式的 Git 集成,如以下列表中所述。每个选项都是一个单独的集成。

  • GitHub 云,GitHub Enterprise 内部部署
  • GitLab 云,GitLab Enterprise 内部部署
  • BitBucket 内部部署

您必须具有相应的本地 Git 存储库并为指定的所有用户配置了访问权限,以便设置 Git 与 Cloud Assembly 的集成。此外,您还必须在特定结构中保存云模板,以便 Git 能够检测到它们。要创建与 GitLab 或 GitHub 的集成,请在 Cloud Assembly 中选择基础架构 > 连接 > 集成,然后进行相应的选择。您需要目标存储库的 url 和令牌。

使用现有存储库配置 Git 集成时,与所选项目关联的所有云模板将对合格用户可用。您可以将这些模板用于现有部署,也可以将其用作新部署的基础。添加项目时,您必须选择与该项目在 Git 中的存储位置和存储方式相关的属性。

您可以直接从 Cloud Assembly 将操作保存到 Git 存储库。您可以直接在 Git 中对操作脚本进行版本控制,也可以在 Cloud Assembly 中创建版本。如果在 Cloud Assembly 中创建操作的版本,则会自动将其作为版本保存到 Git 中。云模板稍微复杂一些,因为不能从 Cloud Assembly 将它们直接添加到 Git 集成中。您必须将它们直接保存到 Git 实例中,然后在使用 Cloud Assembly 中的云模板管理页面时可以从 Git 中检索它们。

开始前

您必须在特定结构中创建并保存云模板,以便 GitLab 或 GitHub 检测到它们。

  • 配置和存储云模板,以便正确地与 GitLab 集成。只有有效模板才会导入到 GitLab。
    • 为云模板创建一个或多个指定文件夹。
    • 所有云模板都必须存储在 blueprint.yaml 文件中。
    • 确保模板的顶部包括 name:version: 属性。
  • 为适用的存储库提取 API 密钥。在 Git 帐户中,选择右上角的登录名,然后导航到“设置”菜单。选择访问令牌,并命名您的令牌,设置到期日期。然后,选择 API 并创建令牌。复制生成的值并保存它。

对于用于 Git 集成的所有云模板,必须遵守以下准则。

  • 每个云模板必须驻留在单独的文件夹中。
  • 所有云模板都必须按 blueprint.yaml 命令。
  • 所有云模板 YAML 文件都必须使用 name 字段和 version 字段。
  • 只会导入有效的云模板。
  • 如果您更新从 Git 导入的草稿云模板,而且该云模板的内容与最高版本中的不同,则在后续的同步不会更新草稿,并且会创建新版本。如果要更新模板并同时允许来自 Git 的后续同步,您必须在完成最终更改之后创建新版本。