【发布时间】:2021-02-17 10:14:43
【问题描述】:
原始参考 - Quit condition on Terraform blueprint
是否仍然可以像上面的问题一样进行条件检查
resource "null_resource" "condition_checker" {
count = "${var.variable == 1 ? 0 : 1}"
"Insert your custom error message" = true
}
类似的格式在 terraform 0.12 和 0.13 中不起作用,我找不到任何关于删除此功能的参考。像0.12或0.13这样的支票可以做吗?
【问题讨论】:
-
你想达到什么目的?你想做变量验证吗?如果是 0.13 引入了变量验证:terraform.io/docs/configuration/…。如果您还不能升级到 0.13,它在技术上早在 0.12.20 就包含在功能标志后面:github.com/hashicorp/terraform/blob/v0.12/…
-
我实际上想要做的是使用定义的工作空间验证当前工作空间 - 类似 terraform.workspace != var.workspace 会引发错误。
-
你为什么要请求工作空间而不是仅仅使用来自
terraform.workspace的值?不过,您仍然应该能够通过输入验证检查变量是否设置为terraform.workspace。 -
当你在remote中存储状态并使用workspace来区分key时,很容易出错。假设我切换到工作区“一”并尝试运行工作区“二”的脚本。但我认为,terraform 在避免这些错误和测试时的差异方面非常可靠。