Terraform-确保根据是否还设置了另一个值来设置值



我想强制设置一个值,而不是使用默认的"quot;如果其他值之一是某个字符串。

例如,我有:

module "test_beanstalk" {
tier = "Worker"
queue = "myQueue"
///
}

在这种情况下,当tier被设置为worker时,我想强制执行queue也被设置。在上面的例子中,有一个场景可以省略队列,从而导致aw生成一个通用的队列,而不是使用特定应用程序所需的队列。

这样的功能在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错误。

相关内容

  • 没有找到相关文章

最新更新