Terraform 计划验证器
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @user_3c6cb52e/terraform-plan-validator
技能介绍
要解决的问题
在Terraform代码合入前,工程师通常需要审查terraform plan输出,确认本次变更不会引发生产环境风险。但计划文本往往冗长且混杂大量资源细节,人工逐行检查不仅耗时,还容易遗漏关键风险点——比如误删核心数据库、资源配置变更导致成本激增,或是实际环境状态与代码声明不一致的漂移问题。这些风险若未在apply前拦截,可能直接引发生产事故或额外开销。
技能如何工作
Terraform 计划验证器直接对接Terraform CLI,通过terraform show -json获取结构化的计划输出,将非结构化文本转化为可分析的JSON数据。核心能力包括三部分:
- 破坏性操作检测:自动扫描计划中的
destroy、replace等高风险操作,识别涉及核心服务、数据卷的资源变更。 - 成本影响评估:通过Infracost API关联资源配置的成本数据,预估本次变更带来的费用增减,帮助提前判断是否需要优化资源规格。
- 状态漂移检测:比对计划输出与当前实际环境状态,标记出未被代码管理的资源变更,避免"隐形"配置偏差持续存在。
适用边界与注意点
该技能聚焦于计划阶段的验证,不直接修改Terraform配置或环境状态。需要提前配置Infracost API密钥才能启用成本评估功能;对于自定义Provider或非标准资源的变更,可能需要额外规则补充检测逻辑。此外,它仅提供风险提示与数据支撑,最终的变更决策仍需工程师结合业务上下文确认。
使用场景
- 在合入Terraform代码前,需要确认本次变更不会误删生产数据库或核心服务,通过破坏性操作检测提前拦截风险
- 提交基础设施变更时,想提前了解这次apply会带来多少费用增减,借助成本影响评估判断是否需要调整资源规格
- 定期检查实际环境是否与Terraform代码声明一致,通过状态漂移检测发现未被代码管理的资源变更
- 在CI流程中自动审查terraform plan输出,拦截包含destroy或replace的高风险操作,避免人工遗漏
适合人员
- 基础设施工程师:负责维护Terraform配置,合入前需要快速定位高风险变更,避免生产事故
- DevOps工程师:在CI/CD流程中需要对plan输出做自动化风险拦截,减少人工审查时间
- 平台负责人:关注变更对生产环境稳定性和成本的影响,需要提前看到风险点和费用预估
- 安全审计人员:需要定期检查环境状态是否与代码声明一致,排查未被管理的资源变更