gpt4 book ai didi

terraform - 除了反复试验之外,如何测试 terraform 模板

转载 作者:行者123 更新时间:2023-12-01 07:52:13 26 4
gpt4 key购买 nike

我正在使用 Terraform 创建云资源。每个资源在供应后都应处于特定的期望状态。例如,当我创建 Google Cloud Bucket 时,我希望自动应用某些权限。所以,我的计划包含了必要的代码,但我想在我申请之前确保它一直有效。是否有任何测试工具/库可以在这里提供帮助?

最佳答案

是的,我之前也有同样的想法。目前,当我应用新的 terraform 更改时,我使用多种方法来降低风险。

他们不能保证 100% 成功 terraform apply ,但会在您应用它之前解决大多数问题。

  • 验证 terraform 配置文件。

  • Terraform 有 validate function为开始。但是通过子文件夹还不够聪明。我创建了一个小的 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
    }

    当然,做 terraform fmt在您提交更改之前,这不是个坏主意。
  • terraform plan

  • @Martin Atkins 已经解释过了, terraform.io有关于这个命令的详细信息。
  • 运行自动化测试厨房。

  • 这是一个用于测试 Terraform 配置的测试 Kitchen 插件

    https://github.com/newcontext-oss/kitchen-terraform

    那是一个集成测试。测试将在单独的 VPC 中运行,并且与您添加的测试用例一样多。在 CI/CD 管道中添加自动化测试,以便在每次向 master 分支提出合并请求时触发自动化测试。仅在通过测试后应用更改。

    关于terraform - 除了反复试验之外,如何测试 terraform 模板,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43875414/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com