gpt4 book ai didi

amazon-web-services - Terraform - 为变量指定多个可能的值

转载 作者:行者123 更新时间:2023-12-03 18:40:53 28 4
gpt4 key购买 nike

CloudFormation 为参数提供了AllowedValues,它告诉参数的可能值可以来自此列表。如何使用 Terraform 变量实现此目的?列表的变量类型不提供此功能。因此,如果我希望我的变量仅具有两个可能值中的值,我该如何使用 Terraform 来实现这一目标。我想要复制的 CloudFormation 脚本是:

"ParameterName": {
"Description": "desc",
"Type": "String",
"Default": true,
"AllowedValues": [
"true",
"false"
]
}

最佳答案

我不知道官方的方式,但是描述了一种有趣的技术 in a Terraform issue :

variable "values_list" {
description = "acceptable values"
type = "list"
default = ["true", "false"]
}

variable "somevar" {
description = "must be true or false"
}

resource "null_resource" "is_variable_value_valid" {
count = "${contains(var.values_list, var.somevar) == true ? 0 : 1}"
"ERROR: The somevar value can only be: true or false" = true
}

更新:

Terraform 现在提供 custom validation rules在 Terraform 0.13 中:

variable "somevar" {
type = string
description = "must be true or false"

validation {
condition = can(regex("^(true|false)$", var.somevar))
error_message = "Must be true or false."
}
}

关于amazon-web-services - Terraform - 为变量指定多个可能的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54254524/

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