Terraform contains(...) - 如何检查通配符或前缀
Terraform contains(...) - how to check for wildcard or prefix
有没有一种方法可以检查 Terraform 中的变量是否包含特定的子字符串,即 en 环境前缀,例如 eu-
或 us-
?请参阅以下内容以更好地理解我想要做什么。
contains("eu-<...>", var.environment) ? do-something : do-something-else
<...>
可以是任何东西。
您可以通过 regexall
实现此目的:
length(regexall("eu-", var.environment)) > 0
例如:
variable environment {
default = "eu-dev-environment"
}
locals {
contains = length(regexall("eu-", var.environment)) > 0
}
在这种情况下,contains
的值将是 true
。
有没有一种方法可以检查 Terraform 中的变量是否包含特定的子字符串,即 en 环境前缀,例如 eu-
或 us-
?请参阅以下内容以更好地理解我想要做什么。
contains("eu-<...>", var.environment) ? do-something : do-something-else
<...>
可以是任何东西。
您可以通过 regexall
实现此目的:
length(regexall("eu-", var.environment)) > 0
例如:
variable environment {
default = "eu-dev-environment"
}
locals {
contains = length(regexall("eu-", var.environment)) > 0
}
在这种情况下,contains
的值将是 true
。