我正在使用Terraform创建云资源.在配置之后,预期每个资源都处于特定的期望状态.例如,当我创建Google Cloud Bucket时,我希望自动应用某些权限.所以,我的计划包含了必要的代码,但我想确保无论在申请之前这都是有效的.有没有可以帮助的测试工具/库?
是的,我之前有同样的想法.目前,当我应用新的terraform更改时,我会使用多种方法来降低风险.
他们无法保证100%成功terraform apply,但会在您应用之前解决大多数问题.
Terraform具有启动验证功能.但是通过子文件夹不够聪明.我创建了一个小shell函数并添加了CI/CD管道以便之前自动运行它terraform apply.
validate() {
modules=$(find . -type f -name "*.tf" -exec dirname {} \;|sort -u)
for m in ${modules}
do
(terraform validate "$m" && echo "? $m") || exit 1
done
}
Run Code Online (Sandbox Code Playgroud)
当然,terraform fmt在你提交改变之前做的也不错.
@Martin Atkins已经解释过了,terraform.io有关于这个命令的详细信息.
这是测试Terraform配置的测试Kitchen插件
https://github.com/newcontext-oss/kitchen-terraform
这是一个集成测试.测试将在单独的VPC中运行,与您添加的测试用例一样多.在CI/CD管道中添加自动化测试,以便在每次向主分支引发合并请求时触发自动化测试.只有在通过测试后才应用更改.
| 归档时间: |
|
| 查看次数: |
3707 次 |
| 最近记录: |