Terraform:组合变量以制作列表
Terraform: Combine Variables to make a list
locals{
instance_name = "TESTWINDOWSVM"
instance_count = 4
vm_instances = format("%s%s", local.instance_name,local.instance_count)
}
我正在通过 terraform azure 创建一个 windows VM,我想结合 instance_name 和 instance_count 并能够创建一个新的列表变量。
输出应为 [TESTWINDOWSVM001、TESTWINDOWSVM002、TESTWINDOWSVM003、TESTWINDOWSVM004]。有没有办法在 terraform 中做到这一点?
您可以使用一个直接的 for
表达式从列表构造函数中的 range
函数迭代,以及一些带有格式函数的字符串插值以确保三个数字,并且都在 return:
[for idx in range(local.instance_count) : "${local.instance_name}${format("%03d", idx + 1)}"]
locals{
instance_name = "TESTWINDOWSVM"
instance_count = 4
vm_instances = format("%s%s", local.instance_name,local.instance_count)
}
我正在通过 terraform azure 创建一个 windows VM,我想结合 instance_name 和 instance_count 并能够创建一个新的列表变量。 输出应为 [TESTWINDOWSVM001、TESTWINDOWSVM002、TESTWINDOWSVM003、TESTWINDOWSVM004]。有没有办法在 terraform 中做到这一点?
您可以使用一个直接的 for
表达式从列表构造函数中的 range
函数迭代,以及一些带有格式函数的字符串插值以确保三个数字,并且都在 return:
[for idx in range(local.instance_count) : "${local.instance_name}${format("%03d", idx + 1)}"]