📅  最后修改于: 2023-12-03 14:47:56.768000             🧑  作者: Mango
在 Terraform 中,变量是用来定义可重复使用的值的,这些值可以在 Terraform 模块中使用。这个模块可以是单独的文件,也可以是一个由多个文件组成的目录。变量可以通过外部源、预定义的值或者从计算过程中获得。
变量可以分为以下类型:
字符串类型的变量可以用来表示任意长度的字符串,可以使用单引号或双引号来定义,例如:
variable "name" {
type = string
default = "Bob"
}
数字类型的变量可以用来表示整数或浮点数,例如:
variable "age" {
type = number
default = 30
}
布尔类型的变量可以用来表示 true 或 false,例如:
variable "is_enabled" {
type = bool
default = true
}
列表类型的变量是一组值的集合,这些值可以是同一类型或不同类型的,例如:
variable "names" {
type = list(string)
default = ["Alice", "Bob", "Charlie"]
}
Map 类型的变量是一组键值对的集合,键和值可以是同一类型或不同类型的,例如:
variable "mapping" {
type = map(string)
default = {
"key1" = "value1"
"key2" = "value2"
"key3" = "value3"
}
}
对象类型的变量定义了一个结构,它可以包含多个键值对,这些键值对有不同的类型,例如:
variable "person" {
type = object({
name = string
age = number
email = string
})
default = {
name = "Alice"
age = 30
email = "alice@example.com"
}
}
以上是关于 Terraform 变量类型的介绍。在 Terraform 中,变量的类型是非常重要的,因为它会决定 Terraform 对该变量的处理方式。选择适当的变量类型,能够更好地提高 Terraform 的效率和可用性。