![](/img/trans.png)
[英]Azure custom policy for require tags for resource groups with valid value set using terraform
[英]Terraform - ensure value is set depending on if another value is also set
如果其他值之一是某个字符串,我想强制设置一个值而不是使用默认值“”。
例如我有:
module "test_beanstalk" {
tier = "Worker"
queue = "myQueue"
///
}
在此,当tier
设置为worker
时,我想强制设置该queue
。 在上面的示例中,有一个场景可以省略队列,导致 aws 生成一个通用队列,而不是使用该特定应用程序所需的队列。
TF不直接支持此类功能。 但是您可以强制 TF 使用locals
和某些条件强制 TF 出错,如果您的验证失败,这些条件只会导致错误。 例如,在您的test_beanstalk
中,您可以拥有:
variable "tier" {
default = "Worker"
}
variable "queue" {
default = ""
}
locals {
if_queue_given = var.tier == "Worker" && var.queue == "" ? tonumber("queue can't be empty") : 1
}
如果条件var.tier == "Worker" && var.queue == ""
为true
, tonumber("queue can't be empty")
将被执行并导致 TF 错误。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.