modules/firewall/variables.tf (28 lines of code) (raw):
variable "firewalls" {
type = map(object({
virtual_hub_id = string
sku_name = optional(string, "AZFW_Hub")
location = string
resource_group_name = string
sku_tier = string
name = string
zones = optional(list(number), [1, 2, 3])
firewall_policy_id = optional(string)
vhub_public_ip_count = optional(string, null)
tags = optional(map(string))
}))
default = {}
description = <<DESCRIPTION
Map of objects for Azure Firewall resources to deploy into the Virtual WAN Virtual Hubs that have been defined in the variable `virtual_hubs`.
The key is deliberately arbitrary to avoid issues with known after apply values. The value is an object, of which there can be multiple in the map:
- `virtual_hub_key`: The arbitrary key specified in the map of objects variable called `virtual_hubs` for the object specifying the Virtual Hub you wish to deploy this Azure Firewall into.
- `sku_name`: The SKU name for the Azure Firewall. Possible values are: `AZFW_VNet`, `AZFW_Hub`. Defaults to `AZFW_Hub`.
- `sku_tier`: The SKU tier for the Azure Firewall. Possible values are: `Basic`, `Standard`, `Premium`.
- `name`: The name for the Azure Firewall resource.
- `zones`: Optional list of zones to deploy the Azure Firewall into. Defaults to `[1, 2, 3]`.
- `firewall_policy_id`: Optional Azure Firewall Policy Resource ID to associate with the Azure Firewall.
- `vhub_public_ip_count`: Optional number of public IP addresses to associate with the Azure Firewall.
- `tags`: Optional tags to apply to the Azure Firewall resource.
> Note: There can be multiple objects in this map, one for each Azure Firewall you wish to deploy into the Virtual WAN Virtual Hubs that have been defined in the variable `virtual_hubs`.
DESCRIPTION
}