IBM Cloud Docs
将模块加载到专用目录

将模块加载到专用目录

模块是自动化代码的独立统一,可由开发者复用并作为更大系统的一部分共享。 您可以选择创建自己的模块,也可以从 IBM Cloud Terraform 模块 存储库中选择一个模块。 要与组织中的其他人共享模块或验证部署,可以将该模块添加到专用目录。

准备工作

在可以加载模块之前,请确保完成以下先决条件。

  • 验证您是否正在使用现收现付帐户或预订帐户。 有关更多详细信息,请参阅 查看帐户类型
  • 验证您是否具有使用专用目录和模块所需的访问权。
    • IBM Cloud Schematics 服务上的管理者角色
    • 目录管理服务的编辑者角色
    • 帐户中所有资源组的查看者角色
    • SecretsReader Secrets Manager 服务上的角色 (如果您计划将安全值存储在 Secrets Manager 的实例中)
    • Security and Compliance Center 服务上的读者角色
    • 定制模块中特定资源所需的其他角色。
  • 创建专用目录。
  • 确保将模块的源代码存储在 GitHub 或 GitLab 存储库中。 有关将源代码放入存储库中的帮助,请参阅 设置源代码存储库

打包源代码

要创建将模块加载到专用目录所需的 .tgz 文件,必须创建源代码的发行版版本。 有关创建发布的帮助,请参阅 管理存储库中的发布

如果您正在使用专用源代码存储库,请确保您具有 Git 个人访问令牌 或存储在 Secrets Manager 中的私钥。

将模块添加到专用目录

  1. 在 IBM Cloud 控制台中,转至控制台的 管理 > 目录 > 专用目录 页面。

  2. 选择要添加模块的私有目录。 打开目录详细信息页面。

  3. 单击添加产品。 这样会打开一个侧面板。

  4. 针对 产品类型选择 模块

  5. 选择 Terraform 作为 交付方法

  6. 选择源代码所在的存储库类型。

    如果源代码位于专用存储库中,那么需要使用 Git 个人访问令牌Secrets Manager 中的私钥进行认证。

  7. 源 URL 字段中添加源代码链接。 它应该类似于 https://github.com/terraform-ibm-modules/terraform-ibm-cos/archive/refs/tags/v7.0.5.tar.gz

  8. 选择要使用的示例

  9. 以主要版本、次要版本和修订版的格式输入软件版本。 例如,1.0.0。 通常,此版本与发行版快照的版本号相匹配。

  10. 选择要在目录中对模块进行分组的类别。

  11. 单击添加产品。 显示概览页面。

在专用目录中向模块添加示例

要向模块添加其他示例,可以添加新版本。

  1. 转至控制台的 管理 > 目录 > 专用目录 页面。
  2. 选择要将模块添加到的专用目录。 打开目录详细信息页面。
  3. 选择要为其提供更多详细信息的模块。
  4. 版本 选项卡上,单击 添加版本
  5. 遵循上一部分中概述的过程- 将模块添加到专用目录

编辑商品

成功将模块添加到专用目录后,可以指定用户在尝试使用模块时看到的信息。 这些信息包括模块的描述,指向文档的链接以及确保模块易于结束的关键字。

  1. 转至控制台的 管理 > 目录 > 专用目录 页面。
  2. 选择要将模块添加到的专用目录。 打开目录详细信息页面。
  3. 选择要为其提供更多详细信息的模块。
  4. 编辑模块的商品详细信息。
    1. 商品详细信息 部分中,单击 编辑
    2. 查看随可部署体系结构一起导入的信息,并根据需要进行编辑。
    3. 通过检查 商品预览,验证您的条目是否按预期显示。
    4. 完成选择后,单击 保存
  5. 编辑模块的“关于”页面。 当用户从目录中选择模块时,将显示 关于 部分,允许他们了解有关可用功能的更多信息。
    1. 操作 下拉列表中,选择 编辑产品页面
    2. 输入模块的描述,以说明模块的价值和对用户的益处。
    3. 要添加特定功能部件信息,请单击 功能部件 > 添加功能部件
    4. 添加模块级别的功能,用于说明模块的流程,能力和结果。
    5. 单击更新

通过控制台指定版本详细信息

您的用户将看到您在模块的商品中定义的示例级别信息。 作为此流的一部分提供的信息可帮助其他人了解与其关联的各个组件的功能。

通过控制台指定详细信息后,可以生成清单文件并将其添加到源代码中。 通过执行此操作,您可以确保将规范转入未来发行版,并且无需使用每个发行版对其进行重新配置。

了解详细信息

将模块添加到专用目录后,可以在控制台中使用逐步预评估来更新有关模块的常规信息。 要访问控制台页面,可以使用以下步骤。

  1. 转至控制台的 管理 > 目录 > 专用目录 页面。
  2. 选择要将模块添加到的专用目录。 打开目录详细信息页面。
  3. 选择要为其提供更多详细信息的模块。
  4. 版本 选项卡上,选择要为其提供信息的特定版本。 您可以使用控制台来更新所需的任何部分。

配置版本详细信息

配置版本 选项卡上,您可以查看和更新有关模块的特定版本的信息。 您还可以配置部署详细信息,定义所需的 IAM 访问权,以及详细说明您希望用户了解的更改通知。

如果模块需要特定的 Terraform 运行时版本,那么可以覆盖缺省版本。 如果将 TF_VERSION 作为输入变量包含在源代码存储库中,那么在创建商品时将自动更新该变量。

输入变量是用户在使用模块时指定的参数。 您可以查看和修改随源代码一起导入的输入和输出变量,也可以在此步骤中向模块添加变量。 添加变量时,您可以更新这些变量是必需的,可见的还是需要提供这些变量的格式。

当您发布新版本的模块时,您可能希望在用户开始使用新版本之前通知他们所作的更改。 您可以将信息分为三个类别: 分类更改,新功能和常规更新。

  • 中断更改: 详细说明对新版本的代码所作的任何更改,这些更改可能会给使用先前版本的用户带来破坏性体验。
  • 新增功能: 突出显示用户可能希望利用的新版本中提供的任何新功能。
  • 更新: 描述对新版本进行的任何常规更新。 例如,现有功能部件的错误修订或改进。

添加模块详细信息

使模块可供云中的其他用户使用时,必须提供以下信息:

  • 详细说明模块中的组件如何协同工作的体系结构图。

    模块的每个示例都必须具有至少一个体系结构图,该图概述模块示例中包含的组件之间的关系,约束和边界。 必须以 .svg 格式提供体系结构图。

  • 可帮助用户区分模块的哪个版本或示例可能最适合他们的需求的任何突出显示。 例如,您可能想要列出 VPC 的数量,网络连接类型,高可用性功能或可用于区分每个示例的其他重要因素。

添加许可协议

如果用户需要接受 IBM Cloud 服务协议之外的任何许可协议,请提供每份协议的 URL。

编辑自述文件

在自述文件中记录有关运行模块的指示信息。

正在验证版本

验证过程通过从您配置的 Schematics 服务运行 Terraform 模板来对其进行测试。 成功的验证可确保用户可以将您的模块与您的缺省输入变量配合使用。 您必须先验证模块,然后才能共享该模块。 要监视验证过程的进度,请单击 操作 菜单中的 查看日志。 此时将打开 Schematics 工作空间。

复审成本

确保您完全了解与加入模块相关联的成本。 必须先验证版本,然后才能生成估算成本。

管理合规性

将模块加载到专用目录时,可以指定模块在运行时满足的合规性控制。 法规控制的合规性由 IBM Cloud Security and Compliance Center进行评估。 如需了解更多信息,请参阅“锁定评估资源”。

  1. 单击 添加声明

  2. 选择概要文件。 将从 Security and Compliance Center 服务中拉取概要文件。 您可以选择选择预定义概要文件,或者转至 Security and Compliance Center 并创建您自己的概要文件。

  3. 指定模块是满足概要文件中的所有控件,还是满足部分控件的控件需求。

  4. 如果模块只能满足部分控件,那么必须选择可以满足的控件并将其添加为声明。

  5. 使用 Security and Compliance Center 来确认您已识别的声明。

    1. 在 IBM Cloud 控制台中,单击菜单图标 菜单 图标 > 管理安全性和合规性 访问 Security and Compliance Center。
    2. 在所选概要文件与包含验证部署期间创建的资源的作用域之间创建附件。
    3. 运行扫描并等待结果可用。
  6. 在目录 UI 的 管理合规性 选项卡中,单击 添加扫描

  7. 选择 实例概要文件以及要添加的特定扫描。

  8. 单击添加

复审需求

完成预评估后,必须复审您的选择,并确认您已准备好将模块共享到目录。 准备就绪后,单击 准备共享

下载清单

每当通过控制台对模块配置进行更改时,最好生成并下载新的清单文件,以确保在模块的未来发行版中选取更改。

要通过 UI 下载清单,可以使用以下步骤。

  1. 转至控制台的 管理 > 目录 > 专用目录 页面。
  2. 选择先前已加载的模块。 将打开详细信息页面。
  3. 版本 选项卡上,选择要为其生成清单的版本。
  4. 操作 下拉菜单中,选择 导出为代码
  5. 将该文件作为 ibm_catalog.json 添加到源代码存储库的根文件夹中。

后续步骤

现在,您的模块已添加到专用目录并设置了详细信息,您已准备好与组织的其他成员共享该模块。 有关共享的帮助,请参阅 共享产品