SuperAPI AI 工具集

alibabacloud-writing-plans

写作与研究

查看项目

更新于 10-15 19:54

技能介绍

用途:将已审批的基础设施设计转换为 Terraform HCL 代码,并可生成 Terraform 无法覆盖操作的 CLI 脚本;本技能只写代码,不执行任何 terraform 命令,也不改动云上资源。

前置条件:需存在 tasks/status.json 且 status 为 "designed",以及含有已审批设计的 designs/design.md;缺失时应停止并提示先完成设计规划。触发时机为规划阶段完成、用户明确要求生成 Terraform 代码,或在 alibabacloud-spec-ops:alibabacloud-planning 完成后自动触发。

主要能力与规则:先读取 design.md 理解资源清单、网络拓扑、安全要求、依赖关系及地域、可用区、实例规格等;读取 tasks/status.json 的 mode(fast-track 或 full)与 change_type 字段。HCL 代码生成必须通过调用 alibabacloud-spec-ops:alibabacloud-terraform-codegen 完成,禁止自行内联生成;生成结果统一写入单一 main.tf,不拆分文件,内部顺序为 terraform {} → provider → variables → locals → data → resources → outputs;每个变量须有默认值。change_type 为 "modify" 时,需先读取 designs/terraform/ 下现有 .tf 文件,仅按更新后的设计增量修改并保留未变资源。

使用方式:按步骤先标记“生成 Terraform 代码”为进行中,加载设计并整理资源清单,调用 terraform-codegen 生成代码,写入 .aliyun-ai-ops-spec/{name}/designs/terraform/main.tf;Terraform 不支持的操作可写入 designs/cli/ 的 bash 脚本,例如 aliyun <service> <operation> --<args>。完成后静默将状态置为 "plans-written",随后自动调用 alibabacloud-validate,无需询问用户。

限制:不生成 HCL 之外自行编写代码、不猜测属性名、不使用硬编码值替代变量、跳过 IaCService schema 校验、拆分为多个 .tf 文件、遗漏重要输出均属禁止行为;fast-track 与 full 模式在代码生成与文件组织上相同,仅在用户输出详细度上有差异。具体支持的云产品范围、版本约束等细节暂未提供。