如果条件为真,Terraform 使用 for 循环分配变量值
Terraform assign variable value using for loop if condition is true
我需要将 short_id 分配给变量 short_location_name,
我在下面的terrfaorm代码中有地图short_location_names,如果“var.location”是“westus”,我需要分配short_location_names“wus”
my_code:
locals {
short_location_names = {
"westus": "wus",
"eastus": "eus",
"westus2": "wus2",
"eastus2": "eus2"
}
short_location_name = {
for location, short_id in local.short_location_names: location == var.location ? short_location_name => short_id
}
我试过上面的代码,我收到错误消息 missing false statement,如何解决?
改用lookup
函数:
short_location_name = lookup(local.short_location_names, var.location, null)
或
short_location_name = { var.location: lookup(local.short_location_names, var.location, null) }
或者只是 local.short_location_names[var.location]
如果该值将始终存在于地图中。
我需要将 short_id 分配给变量 short_location_name,
我在下面的terrfaorm代码中有地图short_location_names,如果“var.location”是“westus”,我需要分配short_location_names“wus”
my_code:
locals {
short_location_names = {
"westus": "wus",
"eastus": "eus",
"westus2": "wus2",
"eastus2": "eus2"
}
short_location_name = {
for location, short_id in local.short_location_names: location == var.location ? short_location_name => short_id
}
我试过上面的代码,我收到错误消息 missing false statement,如何解决?
改用lookup
函数:
short_location_name = lookup(local.short_location_names, var.location, null)
或
short_location_name = { var.location: lookup(local.short_location_names, var.location, null) }
或者只是 local.short_location_names[var.location]
如果该值将始终存在于地图中。