{"id":18578881,"url":"https://github.com/libre-devops/terraform-azurerm-network","last_synced_at":"2026-03-08T19:35:12.905Z","repository":{"id":118714521,"uuid":"482156658","full_name":"libre-devops/terraform-azurerm-network","owner":"libre-devops","description":"A module used for creating an Azure virtual network and subnet :fire:","archived":false,"fork":false,"pushed_at":"2024-08-26T13:29:02.000Z","size":80,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2024-12-26T16:11:48.880Z","etag":null,"topics":["azure","azurerm","azurerm-terraform-provider","module","terraform","terraform-module"],"latest_commit_sha":null,"homepage":"","language":"PowerShell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/libre-devops.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-04-16T04:40:32.000Z","updated_at":"2024-11-23T08:14:56.000Z","dependencies_parsed_at":null,"dependency_job_id":"7eaa8295-378f-420e-b41b-c8423a6e376d","html_url":"https://github.com/libre-devops/terraform-azurerm-network","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/libre-devops%2Fterraform-azurerm-network","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/libre-devops%2Fterraform-azurerm-network/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/libre-devops%2Fterraform-azurerm-network/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/libre-devops%2Fterraform-azurerm-network/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/libre-devops","download_url":"https://codeload.github.com/libre-devops/terraform-azurerm-network/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":239315412,"owners_count":19618760,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["azure","azurerm","azurerm-terraform-provider","module","terraform","terraform-module"],"created_at":"2024-11-06T23:38:07.708Z","updated_at":"2026-03-08T19:35:12.892Z","avatar_url":"https://github.com/libre-devops.png","language":"PowerShell","funding_links":[],"categories":[],"sub_categories":[],"readme":"```hcl\nresource \"azurerm_virtual_network\" \"vnet\" {\n  name                = var.vnet_name\n  resource_group_name = var.rg_name\n  location            = var.location\n  address_space       = var.vnet_address_space\n  dns_servers         = var.dns_servers\n  tags                = var.tags\n}\n\nresource \"azurerm_subnet\" \"subnet\" {\n  depends_on = [azurerm_virtual_network.vnet]\n\n  for_each = var.subnets\n\n  name                                          = each.key\n  resource_group_name                           = var.rg_name\n  virtual_network_name                          = azurerm_virtual_network.vnet.name\n  address_prefixes                              = toset(each.value.address_prefixes)\n  service_endpoints                             = toset(each.value.service_endpoints)\n  service_endpoint_policy_ids                   = toset(each.value.service_endpoint_policy_ids)\n  private_endpoint_network_policies             = each.value.private_endpoint_network_policies\n  private_link_service_network_policies_enabled = each.value.private_link_service_network_policies_enabled\n\n  dynamic \"delegation\" {\n    for_each = each.value.delegation != null ? each.value.delegation : []\n    content {\n      name = delegation.value.type\n      service_delegation {\n        name    = delegation.value.type\n        actions = lookup(var.subnet_delegations_actions, delegation.value.type, delegation.value.action)\n      }\n    }\n  }\n}\n\nlocals {\n  subnets = {\n    for subnet in azurerm_subnet.subnet :\n    subnet.name =\u003e subnet.id\n  }\n}\n\nresource \"azurerm_subnet_network_security_group_association\" \"vnet\" {\n  for_each                  = var.nsg_ids != null ? var.nsg_ids : {}\n  subnet_id                 = local.subnets[each.key]\n  network_security_group_id = each.value\n}\n\nlocals {\n  route_table_associations = { for assoc in azurerm_subnet_route_table_association.this : assoc.id =\u003e { subnet_id = assoc.subnet_id, route_table_id = assoc.route_table_id } }\n\n  grouped_by_route_table = { for rt_id in distinct([for assoc in local.route_table_associations : local.route_table_associations[assoc].route_table_id]) :\n    rt_id =\u003e [for assoc in local.route_table_associations : local.route_table_associations[assoc].subnet_id if local.route_table_associations[assoc].route_table_id == rt_id]\n  }\n}\n\n\nresource \"azurerm_route_table\" \"this\" {\n  for_each = var.route_tables\n\n  name                          = each.key\n  location                      = var.location\n  resource_group_name           = var.rg_name\n  bgp_route_propagation_enabled = each.value.bgp_route_propagation_enabled\n\n  dynamic \"route\" {\n    for_each = each.value.routes\n    content {\n      name                   = route.key\n      address_prefix         = route.value.address_prefix\n      next_hop_type          = route.value.next_hop_type\n      next_hop_in_ip_address = lookup(route.value, \"next_hop_in_ip_address\", null)\n    }\n  }\n}\n\nresource \"azurerm_subnet_route_table_association\" \"this\" {\n  depends_on     = [azurerm_subnet.subnet]\n  for_each       = var.subnet_route_table_associations\n  subnet_id      = local.subnets[each.key]\n  route_table_id = azurerm_route_table.this[each.value].id\n}\n```\n## Requirements\n\nNo requirements.\n\n## Providers\n\n| Name | Version |\n|------|---------|\n| \u003ca name=\"provider_azurerm\"\u003e\u003c/a\u003e [azurerm](#provider\\_azurerm) | n/a |\n\n## Modules\n\nNo modules.\n\n## Resources\n\n| Name | Type |\n|------|------|\n| [azurerm_route_table.this](https://registry.terraform.io/providers/hashicorp/azurerm/latest/docs/resources/route_table) | resource |\n| [azurerm_subnet.subnet](https://registry.terraform.io/providers/hashicorp/azurerm/latest/docs/resources/subnet) | resource |\n| [azurerm_subnet_network_security_group_association.vnet](https://registry.terraform.io/providers/hashicorp/azurerm/latest/docs/resources/subnet_network_security_group_association) | resource |\n| [azurerm_subnet_route_table_association.this](https://registry.terraform.io/providers/hashicorp/azurerm/latest/docs/resources/subnet_route_table_association) | resource |\n| [azurerm_virtual_network.vnet](https://registry.terraform.io/providers/hashicorp/azurerm/latest/docs/resources/virtual_network) | resource |\n\n## Inputs\n\n| Name | Description | Type | Default | Required |\n|------|-------------|------|---------|:--------:|\n| \u003ca name=\"input_dns_servers\"\u003e\u003c/a\u003e [dns\\_servers](#input\\_dns\\_servers) | The DNS servers to be used with vNet. | `list(string)` | `[]` | no |\n| \u003ca name=\"input_location\"\u003e\u003c/a\u003e [location](#input\\_location) | The location for this resource to be put in | `string` | n/a | yes |\n| \u003ca name=\"input_nsg_ids\"\u003e\u003c/a\u003e [nsg\\_ids](#input\\_nsg\\_ids) | A map of subnet name to Network Security Group IDs | `map(string)` | `{}` | no |\n| \u003ca name=\"input_rg_name\"\u003e\u003c/a\u003e [rg\\_name](#input\\_rg\\_name) | The name of the resource group, this module does not create a resource group, it is expecting the value of a resource group already exists | `string` | n/a | yes |\n| \u003ca name=\"input_route_tables\"\u003e\u003c/a\u003e [route\\_tables](#input\\_route\\_tables) | Map of Route Tables to be created, where the key is the name of the Route Table. | \u003cpre\u003emap(object({\u003cbr/\u003e    routes = map(object({\u003cbr/\u003e      address_prefix                = string\u003cbr/\u003e      next_hop_type                 = string\u003cbr/\u003e      next_hop_in_ip_address        = optional(string)\u003cbr/\u003e      bgp_route_propagation_enabled = optional(bool, false)\u003cbr/\u003e    }))\u003cbr/\u003e  }))\u003c/pre\u003e | `{}` | no |\n| \u003ca name=\"input_route_tables_ids\"\u003e\u003c/a\u003e [route\\_tables\\_ids](#input\\_route\\_tables\\_ids) | A map of subnet name to Route table ids | `map(string)` | `{}` | no |\n| \u003ca name=\"input_subnet_delegations_actions\"\u003e\u003c/a\u003e [subnet\\_delegations\\_actions](#input\\_subnet\\_delegations\\_actions) | List of delegation actions when delegations of subnets is used, will be done for query | `map(list(string))` | \u003cpre\u003e{\u003cbr/\u003e  \"GitHub.Network/networkSettings\": [\u003cbr/\u003e    \"Microsoft.Network/virtualNetworks/subnets/action\"\u003cbr/\u003e  ],\u003cbr/\u003e  \"Microsoft.AVS/PrivateClouds\": [\u003cbr/\u003e    \"Microsoft.Network/virtualNetworks/subnets/action\"\u003cbr/\u003e  ],\u003cbr/\u003e  \"Microsoft.ApiManagement/service\": [\u003cbr/\u003e    \"Microsoft.Network/virtualNetworks/subnets/action\"\u003cbr/\u003e  ],\u003cbr/\u003e  \"Microsoft.Apollo/npu\": [\u003cbr/\u003e    \"Microsoft.Network/virtualNetworks/subnets/action\"\u003cbr/\u003e  ],\u003cbr/\u003e  \"Microsoft.App/environments\": [\u003cbr/\u003e    \"Microsoft.Network/virtualNetworks/subnets/action\"\u003cbr/\u003e  ],\u003cbr/\u003e  \"Microsoft.App/testClients\": [\u003cbr/\u003e    \"Microsoft.Network/virtualNetworks/subnets/action\"\u003cbr/\u003e  ],\u003cbr/\u003e  \"Microsoft.AzureCosmosDB/clusters\": [\u003cbr/\u003e    \"Microsoft.Network/virtualNetworks/subnets/action\"\u003cbr/\u003e  ],\u003cbr/\u003e  \"Microsoft.BareMetal/AzureHPC\": [\u003cbr/\u003e    \"Microsoft.Network/virtualNetworks/subnets/action\"\u003cbr/\u003e  ],\u003cbr/\u003e  \"Microsoft.BareMetal/AzureHostedService\": [\u003cbr/\u003e    \"Microsoft.Network/virtualNetworks/subnets/action\"\u003cbr/\u003e  ],\u003cbr/\u003e  \"Microsoft.BareMetal/AzurePaymentHSM\": [\u003cbr/\u003e    \"Microsoft.Network/virtualNetworks/subnets/action\"\u003cbr/\u003e  ],\u003cbr/\u003e  \"Microsoft.BareMetal/AzureVMware\": [\u003cbr/\u003e    \"Microsoft.Network/networkinterfaces/*\",\u003cbr/\u003e    \"Microsoft.Network/virtualNetworks/subnets/join/action\"\u003cbr/\u003e  ],\u003cbr/\u003e  \"Microsoft.BareMetal/CrayServers\": [\u003cbr/\u003e    \"Microsoft.Network/networkinterfaces/*\",\u003cbr/\u003e    \"Microsoft.Network/virtualNetworks/subnets/join/action\"\u003cbr/\u003e  ],\u003cbr/\u003e  \"Microsoft.BareMetal/MonitoringServers\": [\u003cbr/\u003e    \"Microsoft.Network/virtualNetworks/subnets/action\"\u003cbr/\u003e  ],\u003cbr/\u003e  \"Microsoft.Batch/batchAccounts\": [\u003cbr/\u003e    \"Microsoft.Network/virtualNetworks/subnets/action\"\u003cbr/\u003e  ],\u003cbr/\u003e  \"Microsoft.CloudTest/hostedpools\": [\u003cbr/\u003e    \"Microsoft.Network/virtualNetworks/subnets/action\"\u003cbr/\u003e  ],\u003cbr/\u003e  \"Microsoft.CloudTest/images\": [\u003cbr/\u003e    \"Microsoft.Network/virtualNetworks/subnets/action\"\u003cbr/\u003e  ],\u003cbr/\u003e  \"Microsoft.CloudTest/pools\": [\u003cbr/\u003e    \"Microsoft.Network/virtualNetworks/subnets/action\"\u003cbr/\u003e  ],\u003cbr/\u003e  \"Microsoft.Codespaces/plans\": [\u003cbr/\u003e    \"Microsoft.Network/virtualNetworks/subnets/action\"\u003cbr/\u003e  ],\u003cbr/\u003e  \"Microsoft.ContainerInstance/containerGroups\": [\u003cbr/\u003e    \"Microsoft.Network/virtualNetworks/subnets/action\"\u003cbr/\u003e  ],\u003cbr/\u003e  \"Microsoft.ContainerService/TestClients\": [\u003cbr/\u003e    \"Microsoft.Network/virtualNetworks/subnets/action\"\u003cbr/\u003e  ],\u003cbr/\u003e  \"Microsoft.ContainerService/managedClusters\": [\u003cbr/\u003e    \"Microsoft.Network/virtualNetworks/subnets/action\"\u003cbr/\u003e  ],\u003cbr/\u003e  \"Microsoft.DBforMySQL/flexibleServers\": [\u003cbr/\u003e    \"Microsoft.Network/virtualNetworks/subnets/action\"\u003cbr/\u003e  ],\u003cbr/\u003e  \"Microsoft.DBforMySQL/servers\": [\u003cbr/\u003e    \"Microsoft.Network/virtualNetworks/subnets/action\"\u003cbr/\u003e  ],\u003cbr/\u003e  \"Microsoft.DBforMySQL/serversv2\": [\u003cbr/\u003e    \"Microsoft.Network/virtualNetworks/subnets/action\"\u003cbr/\u003e  ],\u003cbr/\u003e  \"Microsoft.DBforPostgreSQL/flexibleServers\": [\u003cbr/\u003e    \"Microsoft.Network/virtualNetworks/subnets/action\"\u003cbr/\u003e  ],\u003cbr/\u003e  \"Microsoft.DBforPostgreSQL/serversv2\": [\u003cbr/\u003e    \"Microsoft.Network/virtualNetworks/subnets/join/action\"\u003cbr/\u003e  ],\u003cbr/\u003e  \"Microsoft.DBforPostgreSQL/singleServers\": [\u003cbr/\u003e    \"Microsoft.Network/virtualNetworks/subnets/action\"\u003cbr/\u003e  ],\u003cbr/\u003e  \"Microsoft.Databricks/workspaces\": [\u003cbr/\u003e    \"Microsoft.Network/virtualNetworks/subnets/join/action\",\u003cbr/\u003e    \"Microsoft.Network/virtualNetworks/subnets/prepareNetworkPolicies/action\",\u003cbr/\u003e    \"Microsoft.Network/virtualNetworks/subnets/unprepareNetworkPolicies/action\"\u003cbr/\u003e  ],\u003cbr/\u003e  \"Microsoft.DelegatedNetwork/controller\": [\u003cbr/\u003e    \"Microsoft.Network/virtualNetworks/subnets/action\"\u003cbr/\u003e  ],\u003cbr/\u003e  \"Microsoft.DevCenter/networkConnection\": [\u003cbr/\u003e    \"Microsoft.Network/virtualNetworks/subnets/action\"\u003cbr/\u003e  ],\u003cbr/\u003e  \"Microsoft.DevOpsInfrastructure/pools\": [\u003cbr/\u003e    \"Microsoft.Network/virtualNetworks/subnets/join/action\"\u003cbr/\u003e  ],\u003cbr/\u003e  \"Microsoft.DocumentDB/cassandraClusters\": [\u003cbr/\u003e    \"Microsoft.Network/virtualNetworks/subnets/action\"\u003cbr/\u003e  ],\u003cbr/\u003e  \"Microsoft.Fidalgo/networkSettings\": [\u003cbr/\u003e    \"Microsoft.Network/virtualNetworks/subnets/action\"\u003cbr/\u003e  ],\u003cbr/\u003e  \"Microsoft.HardwareSecurityModules/dedicatedHSMs\": [\u003cbr/\u003e    \"Microsoft.Network/networkinterfaces/*\",\u003cbr/\u003e    \"Microsoft.Network/virtualNetworks/subnets/join/action\"\u003cbr/\u003e  ],\u003cbr/\u003e  \"Microsoft.Kusto/clusters\": [\u003cbr/\u003e    \"Microsoft.Network/virtualNetworks/subnets/action\"\u003cbr/\u003e  ],\u003cbr/\u003e  \"Microsoft.LabServices/labplans\": [\u003cbr/\u003e    \"Microsoft.Network/virtualNetworks/subnets/action\"\u003cbr/\u003e  ],\u003cbr/\u003e  \"Microsoft.Logic/integrationServiceEnvironments\": [\u003cbr/\u003e    \"Microsoft.Network/virtualNetworks/subnets/action\"\u003cbr/\u003e  ],\u003cbr/\u003e  \"Microsoft.MachineLearningServices/workspaces\": [\u003cbr/\u003e    \"Microsoft.Network/virtualNetworks/subnets/action\"\u003cbr/\u003e  ],\u003cbr/\u003e  \"Microsoft.Netapp/volumes\": [\u003cbr/\u003e    \"Microsoft.Network/networkinterfaces/*\",\u003cbr/\u003e    \"Microsoft.Network/virtualNetworks/subnets/join/action\"\u003cbr/\u003e  ],\u003cbr/\u003e  \"Microsoft.Network/dnsResolvers\": [\u003cbr/\u003e    \"Microsoft.Network/virtualNetworks/subnets/join/action\"\u003cbr/\u003e  ],\u003cbr/\u003e  \"Microsoft.Network/fpgaNetworkInterfaces\": [\u003cbr/\u003e    \"Microsoft.Network/virtualNetworks/subnets/action\"\u003cbr/\u003e  ],\u003cbr/\u003e  \"Microsoft.Network/managedResolvers\": [\u003cbr/\u003e    \"Microsoft.Network/virtualNetworks/subnets/action\"\u003cbr/\u003e  ],\u003cbr/\u003e  \"Microsoft.Network/networkWatchers.\": [\u003cbr/\u003e    \"Microsoft.Network/virtualNetworks/subnets/action\"\u003cbr/\u003e  ],\u003cbr/\u003e  \"Microsoft.Network/virtualNetworkGateways\": [\u003cbr/\u003e    \"Microsoft.Network/virtualNetworks/subnets/action\"\u003cbr/\u003e  ],\u003cbr/\u003e  \"Microsoft.Orbital/orbitalGateways\": [\u003cbr/\u003e    \"Microsoft.Network/virtualNetworks/subnets/action\"\u003cbr/\u003e  ],\u003cbr/\u003e  \"Microsoft.PowerPlatform/enterprisePolicies\": [\u003cbr/\u003e    \"Microsoft.Network/virtualNetworks/subnets/action\"\u003cbr/\u003e  ],\u003cbr/\u003e  \"Microsoft.PowerPlatform/vnetaccesslinks\": [\u003cbr/\u003e    \"Microsoft.Network/virtualNetworks/subnets/action\"\u003cbr/\u003e  ],\u003cbr/\u003e  \"Microsoft.ServiceFabricMesh/networks\": [\u003cbr/\u003e    \"Microsoft.Network/virtualNetworks/subnets/action\"\u003cbr/\u003e  ],\u003cbr/\u003e  \"Microsoft.ServiceNetworking/trafficControllers\": [\u003cbr/\u003e    \"Microsoft.Network/virtualNetworks/subnets/action\"\u003cbr/\u003e  ],\u003cbr/\u003e  \"Microsoft.Singularity/accounts/networks\": [\u003cbr/\u003e    \"Microsoft.Network/virtualNetworks/subnets/action\"\u003cbr/\u003e  ],\u003cbr/\u003e  \"Microsoft.Singularity/accounts/npu\": [\u003cbr/\u003e    \"Microsoft.Network/virtualNetworks/subnets/action\"\u003cbr/\u003e  ],\u003cbr/\u003e  \"Microsoft.Sql/managedInstances\": [\u003cbr/\u003e    \"Microsoft.Network/virtualNetworks/subnets/join/action\",\u003cbr/\u003e    \"Microsoft.Network/virtualNetworks/subnets/prepareNetworkPolicies/action\",\u003cbr/\u003e    \"Microsoft.Network/virtualNetworks/subnets/unprepareNetworkPolicies/action\"\u003cbr/\u003e  ],\u003cbr/\u003e  \"Microsoft.Sql/managedInstancesOnebox\": [\u003cbr/\u003e    \"Microsoft.Network/virtualNetworks/subnets/action\"\u003cbr/\u003e  ],\u003cbr/\u003e  \"Microsoft.Sql/managedInstancesStage\": [\u003cbr/\u003e    \"Microsoft.Network/virtualNetworks/subnets/action\"\u003cbr/\u003e  ],\u003cbr/\u003e  \"Microsoft.Sql/managedInstancesTest\": [\u003cbr/\u003e    \"Microsoft.Network/virtualNetworks/subnets/action\"\u003cbr/\u003e  ],\u003cbr/\u003e  \"Microsoft.Sql/servers\": [\u003cbr/\u003e    \"Microsoft.Network/virtualNetworks/subnets/action\"\u003cbr/\u003e  ],\u003cbr/\u003e  \"Microsoft.StoragePool/diskPools\": [\u003cbr/\u003e    \"Microsoft.Network/virtualNetworks/subnets/action\"\u003cbr/\u003e  ],\u003cbr/\u003e  \"Microsoft.StreamAnalytics/streamingJobs\": [\u003cbr/\u003e    \"Microsoft.Network/virtualNetworks/subnets/join/action\"\u003cbr/\u003e  ],\u003cbr/\u003e  \"Microsoft.Synapse/workspaces\": [\u003cbr/\u003e    \"Microsoft.Network/virtualNetworks/subnets/action\"\u003cbr/\u003e  ],\u003cbr/\u003e  \"Microsoft.Web/hostingEnvironments\": [\u003cbr/\u003e    \"Microsoft.Network/virtualNetworks/subnets/action\"\u003cbr/\u003e  ],\u003cbr/\u003e  \"Microsoft.Web/serverFarms\": [\u003cbr/\u003e    \"Microsoft.Network/virtualNetworks/subnets/action\"\u003cbr/\u003e  ],\u003cbr/\u003e  \"NGINX.NGINXPLUS/nginxDeployments\": [\u003cbr/\u003e    \"Microsoft.Network/virtualNetworks/subnets/action\"\u003cbr/\u003e  ],\u003cbr/\u003e  \"PaloAltoNetworks.Cloudngfw/firewalls\": [\u003cbr/\u003e    \"Microsoft.Network/virtualNetworks/subnets/action\"\u003cbr/\u003e  ],\u003cbr/\u003e  \"Qumulo.Storage/fileSystems\": [\u003cbr/\u003e    \"Microsoft.Network/virtualNetworks/subnets/action\"\u003cbr/\u003e  ]\u003cbr/\u003e}\u003c/pre\u003e | no |\n| \u003ca name=\"input_subnet_enforce_private_link_endpoint_network_policies\"\u003e\u003c/a\u003e [subnet\\_enforce\\_private\\_link\\_endpoint\\_network\\_policies](#input\\_subnet\\_enforce\\_private\\_link\\_endpoint\\_network\\_policies) | A map of subnet name to enable/disable private link endpoint network policies on the subnet. | `map(bool)` | `{}` | no |\n| \u003ca name=\"input_subnet_enforce_private_link_service_network_policies\"\u003e\u003c/a\u003e [subnet\\_enforce\\_private\\_link\\_service\\_network\\_policies](#input\\_subnet\\_enforce\\_private\\_link\\_service\\_network\\_policies) | A map of subnet name to enable/disable private link service network policies on the subnet. | `map(bool)` | `{}` | no |\n| \u003ca name=\"input_subnet_route_table_associations\"\u003e\u003c/a\u003e [subnet\\_route\\_table\\_associations](#input\\_subnet\\_route\\_table\\_associations) | Map where the key is the subnet name and the value is the name of the route table to associate with. | `map(string)` | `{}` | no |\n| \u003ca name=\"input_subnet_service_endpoints\"\u003e\u003c/a\u003e [subnet\\_service\\_endpoints](#input\\_subnet\\_service\\_endpoints) | A map of subnet name to service endpoints to add to the subnet. | `map(any)` | `{}` | no |\n| \u003ca name=\"input_subnets\"\u003e\u003c/a\u003e [subnets](#input\\_subnets) | Map of subnets with their properties | \u003cpre\u003emap(object({\u003cbr/\u003e    address_prefixes                              = set(string)\u003cbr/\u003e    private_endpoint_network_policies             = optional(string, \"Disabled\")\u003cbr/\u003e    private_link_service_network_policies_enabled = optional(bool, false)\u003cbr/\u003e    service_endpoint_policy_ids                   = optional(set(string))\u003cbr/\u003e    delegation = optional(list(object({\u003cbr/\u003e      type   = optional(string)\u003cbr/\u003e      action = optional(list(string)) # Optional user-defined action\u003cbr/\u003e    })))\u003cbr/\u003e    service_endpoints = optional(list(string))\u003cbr/\u003e  }))\u003c/pre\u003e | `{}` | no |\n| \u003ca name=\"input_tags\"\u003e\u003c/a\u003e [tags](#input\\_tags) | The tags to associate with your network and subnets. | `map(string)` | n/a | yes |\n| \u003ca name=\"input_vnet_address_space\"\u003e\u003c/a\u003e [vnet\\_address\\_space](#input\\_vnet\\_address\\_space) | The address space that is used by the virtual network. | `list(string)` | n/a | yes |\n| \u003ca name=\"input_vnet_location\"\u003e\u003c/a\u003e [vnet\\_location](#input\\_vnet\\_location) | The location of the vnet to create. Defaults to the location of the resource group. | `string` | n/a | yes |\n| \u003ca name=\"input_vnet_name\"\u003e\u003c/a\u003e [vnet\\_name](#input\\_vnet\\_name) | Name of the vnet to create | `string` | n/a | yes |\n\n## Outputs\n\n| Name | Description |\n|------|-------------|\n| \u003ca name=\"output_route_table_ids\"\u003e\u003c/a\u003e [route\\_table\\_ids](#output\\_route\\_table\\_ids) | Map of Route Table names to their IDs. |\n| \u003ca name=\"output_subnet_ids_associated_with_route_tables\"\u003e\u003c/a\u003e [subnet\\_ids\\_associated\\_with\\_route\\_tables](#output\\_subnet\\_ids\\_associated\\_with\\_route\\_tables) | The IDs of the subnets associated with each route table |\n| \u003ca name=\"output_subnets_ids\"\u003e\u003c/a\u003e [subnets\\_ids](#output\\_subnets\\_ids) | The ids of the subnets created |\n| \u003ca name=\"output_subnets_names\"\u003e\u003c/a\u003e [subnets\\_names](#output\\_subnets\\_names) | The name of the subnets created |\n| \u003ca name=\"output_vnet_address_space\"\u003e\u003c/a\u003e [vnet\\_address\\_space](#output\\_vnet\\_address\\_space) | The address space of the newly created vNet |\n| \u003ca name=\"output_vnet_dns_servers\"\u003e\u003c/a\u003e [vnet\\_dns\\_servers](#output\\_vnet\\_dns\\_servers) | The dns servers of the vnet, if it is using Azure default, this module will return the Azure 'wire' IP as a list of string in the 1st element |\n| \u003ca name=\"output_vnet_id\"\u003e\u003c/a\u003e [vnet\\_id](#output\\_vnet\\_id) | The id of the newly created vNet |\n| \u003ca name=\"output_vnet_location\"\u003e\u003c/a\u003e [vnet\\_location](#output\\_vnet\\_location) | The location of the newly created vNet |\n| \u003ca name=\"output_vnet_name\"\u003e\u003c/a\u003e [vnet\\_name](#output\\_vnet\\_name) | The Name of the newly created vNet |\n| \u003ca name=\"output_vnet_rg_name\"\u003e\u003c/a\u003e [vnet\\_rg\\_name](#output\\_vnet\\_rg\\_name) | The resource group name which the VNet is in |\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flibre-devops%2Fterraform-azurerm-network","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flibre-devops%2Fterraform-azurerm-network","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flibre-devops%2Fterraform-azurerm-network/lists"}