Skip to content

fjdev/terraform-azurerm-virtual-hub

Repository files navigation

Requirements

No requirements.

Providers

Name Version
azurerm n/a

Modules

Name Source Version
resource_group github.com/fjdev/terraform-azurerm-resource-group n/a

Resources

Name Type
azurerm_virtual_hub.vhub resource
azurerm_virtual_hub_connection.vhub_con resource

Inputs

Name Description Type Default Required
address_prefix (Optional) The Address Prefix which should be used for this Virtual Hub. Changing this forces a new resource to be created. The address prefix subnet cannot be smaller than a /24. Azure recommends using a /23. string null no
deploy_resource_group (Optional) Specifies whether to deploy the resource group or not. Defaults to true. bool true no
hub_routing_preference (Optional) The hub routing preference. Possible values are ExpressRoute, ASPath and VpnGateway. Defaults to ExpressRoute. string "ExpressRoute" no
location (Required) Specifies the supported Azure location where the Virtual Hub should exist. Changing this forces a new resource to be created. string n/a yes
managed_by (Optional) The ID of the resource or application that manages this Resource Group. string null no
name (Required) The name of the Virtual Hub. Changing this forces a new resource to be created. string n/a yes
resource_group_name (Required) Specifies the name of the Resource Group where the Virtual Hub should exist. Changing this forces a new resource to be created. string n/a yes
routes (Optional) One or more route blocks as defined below.
list(object({
address_prefixes = list(string)
next_hop_ip_address = string
}))
null no
sku (Optional) The SKU of the Virtual Hub. Possible values are Basic and Standard. Changing this forces a new resource to be created. string null no
tags (Optional) A mapping of tags to assign to the Virtual Hub. any null no
virtual_hub_connections (Optional) A virtual_hub_connections block as defined below.
object({
internet_security_enabled = optional(bool)
routing = optional(object({
associated_route_table_id = optional(string)
inbound_route_map_id = optional(string)
outbound_route_map_id = optional(string)
propagated_route_tables = optional(object({
labels = optional(list(string))
route_table_ids = optional(list(string))
}))
static_vnet_local_route_override_criteria = optional(string)
static_vnet_routes = optional(object({
name = optional(string)
address_prefixes = optional(list(string))
next_hop_ip_address = optional(string)
}))
}))
remote_virtual_networks = map(object({
subscription_id = string
resource_group_name = string
internet_security_enabled = optional(bool)
routing = optional(object({
associated_route_table_id = optional(string)
inbound_route_map_id = optional(string)
outbound_route_map_id = optional(string)
propagated_route_tables = optional(object({
labels = optional(list(string))
route_table_ids = optional(list(string))
}))
static_vnet_local_route_override_criteria = optional(string)
static_vnet_routes = optional(object({
name = optional(string)
address_prefixes = optional(list(string))
next_hop_ip_address = optional(string)
}))
}))
}))
})
null no
virtual_wan_id (Optional) The ID of a Virtual WAN within which the Virtual Hub should be created. Changing this forces a new resource to be created. string null no

Outputs

Name Description
default_route_table_id The ID of the default Route Table in the Virtual Hub.
id The ID of the Virtual Hub.
virtual_router_asn The Autonomous System Number of the Virtual Hub BGP router.
virtual_router_auto_scale_min_capacity Minimum instance capacity for the scaling configuration of the Virtual Hub Router.
virtual_router_ips The IP addresses of the Virtual Hub BGP router.