Я создаю конфигурацию terraform (назовем ее config A), которая используется в качестве модуля в другом config (config B).
В конфигурации A у меня есть необязательная переменная, которая представляет собой разделенную запятыми строку (без пробела), содержащую IP-адреса или диапазоны IP-адресов в форме CIDR.
То, что я хочу, это пропустить или не устанавливать значение этой переменной, если нет IP-адресов в качестве входных данных из конфигурации B.
Я попытался установить "" в качестве значения, но это, конечно, не работает. Также пробовал другие значения, но не могу понять.
Есть ли способ выполнить эту работу, или я должен создать две конфигурации (назовем это config A.1 и A.2), где A.1 содержит строковую переменную, а A.2 нет.
Может быть, пример кода того, что я пытаюсь сделать, может помочь.
#Config A
resource "azurerm_cosmosdb_account" "db" {
name = "${var.name_from_module_caller}"
location = "northeuropa"
resource_group_name = "test-cosmos-db-from-terraform"
offer_type = "Standard"
consistency_policy = {
consistency_level = "Session"
}
geo_location = {
location = "northeuropa"
location = "${azurerm_resource_group.rg.location}"
failover_priority = 0
}
ip_range_filter = "${var.whitelis_ip_from_module_caller}" #Need a way to skip this, if var.whitelis_ip_from_module_caller is "". Can't use ""
}
#Config B
module "test-cosmos-db" {
source = "/module/azure_cosmos_module" #This is the Config A
name_from_module_caller = "test-cosmosdb"
# whitelis_ip_from_module_caller //NOT SET, BECAUSE THIS MUST BE OPENED FOR EVERYONE
}
I