用途:创建跨 AWS、Azure、GCP 的可复用、经过测试的 Terraform 模块,标准化云资源供给,落地基础设施即代码实践,建立组织级 Terraform 规范。
主要能力:提供标准模块目录结构(main.tf、variables.tf、outputs.tf、versions.tf、README.md、examples/、tests/),覆盖 AWS 的 vpc/eks/rds/s3、Azure 的 vnet/aks/storage、GCP 的 vpc/gke/cloud-sql 等常见模式;示例包含 VPC、子网、互联网网关等资源,变量带 validation 校验,输出关键属性供模块组合。
使用方式:按标准模式组织模块,在 examples/ 提供用法示例,通过 module 块引用模块并传入 name、cidr_block、availability_zones、private_subnet_cidrs、tags 等参数;用 Terratest 编写测试(terraform.InitAndApply、terraform.Output、terraform.Destroy)。
最佳实践:模块使用语义化版本;为所有变量写描述;提供示例;用 validation 校验输入;输出重要属性;在 versions.tf 固定 provider 版本;用 locals 处理计算值;用 count/for_each 实现条件资源;用 Terratest 测试;统一打标签。
适用场景:构建可复用基础设施组件、统一云资源供给、多云端兼容模块、制定组织 Terraform 标准。
限制:不适用于与 Terraform 模块库无关的任务,或超出该范围的领域与工具;具体收费、价格、平台支持与效果资料暂未提供。