locals {
fw-subnet-ids = var.env == "dev" || var.env == "qa" ? data.azurerm_subnet.storage-fw-subnets-lower[*].id : data.azurerm_subnet.storage-fw-subnets-upper[*].id
}
我使用fw-subnet-ids
作为本地var,并使用它来设置存储帐户资源的防火墙规则。我想更改此规则,以便现在
对于dev和qa。。。降低[].id和。。。。允许使用上限[].id对于uat&仅刺激。。。。允许使用upper[*].id子网。
如何更新本地块以使其成为可能?
对于此要求,您需要为变量env
的值设置限制,即它必须是四个输入dev, qa, uat, prod
之一,并且不能为null。然后你可以这样改变当地人:
locals {
fw-subnet-ids = var.env == "dev" || var.env == "qa" ? concat(data.azurerm_subnet.storage-fw-subnets-lower[*].id, data.azurerm_subnet.storage-fw-subnets-upper[*].id) : data.azurerm_subnet.storage-fw-subnets-upper[*].id
}
这意味着,如果变量env
是两个dev, qa
中的任何一个,甚至是两个,则返回组合列表的列表。。。降低[].id和。。。。upper[].id。如果变量env
不是其中之一,则它必须是uat, prod
之一或两者都是,然后返回列表。。。。上[*].id.