dependency/azapi_examples/Microsoft.Network_networkManagers_connectivityConfigurations@2022-09-01/main.tf (127 lines of code) (raw):

terraform { required_providers { azapi = { source = "Azure/azapi" } azurerm = { source = "hashicorp/azurerm" } } } provider "azurerm" { features { } } provider "azapi" { skip_provider_registration = false } variable "resource_name" { type = string default = "acctest0001" } variable "location" { type = string default = "westeurope" } data "azurerm_client_config" "current" { } data "azapi_resource" "subscription" { type = "Microsoft.Resources/subscriptions@2021-01-01" resource_id = "/subscriptions/${data.azurerm_client_config.current.subscription_id}" response_export_values = ["*"] } resource "azapi_resource" "resourceGroup" { type = "Microsoft.Resources/resourceGroups@2020-06-01" name = var.resource_name location = var.location } resource "azapi_resource" "networkManager" { type = "Microsoft.Network/networkManagers@2022-09-01" parent_id = azapi_resource.resourceGroup.id name = var.resource_name location = var.location body = { properties = { description = "" networkManagerScopeAccesses = [ "SecurityAdmin", "Connectivity", ] networkManagerScopes = { managementGroups = [ ] subscriptions = [ data.azapi_resource.subscription.id, ] } } } schema_validation_enabled = false response_export_values = ["*"] } resource "azapi_resource" "virtualNetwork" { type = "Microsoft.Network/virtualNetworks@2022-07-01" parent_id = azapi_resource.resourceGroup.id name = var.resource_name location = var.location body = { properties = { addressSpace = { addressPrefixes = [ "10.0.0.0/16", ] } dhcpOptions = { dnsServers = [ ] } flowTimeoutInMinutes = 10 subnets = [ ] } } schema_validation_enabled = false response_export_values = ["*"] lifecycle { ignore_changes = [body.properties.subnets] } } resource "azapi_resource" "networkGroup" { type = "Microsoft.Network/networkManagers/networkGroups@2022-09-01" parent_id = azapi_resource.networkManager.id name = var.resource_name body = { properties = { } } schema_validation_enabled = false response_export_values = ["*"] } resource "azapi_resource" "connectivityConfiguration" { type = "Microsoft.Network/networkManagers/connectivityConfigurations@2022-09-01" parent_id = azapi_resource.networkManager.id name = var.resource_name body = { properties = { appliesToGroups = [ { groupConnectivity = "None" isGlobal = "False" networkGroupId = azapi_resource.networkGroup.id useHubGateway = "False" }, ] connectivityTopology = "HubAndSpoke" deleteExistingPeering = "False" hubs = [ { resourceId = azapi_resource.virtualNetwork.id resourceType = azapi_resource.virtualNetwork.output.type }, ] isGlobal = "False" } } schema_validation_enabled = false response_export_values = ["*"] }