diff --git a/quickstart/101-virtual-network-manager-create-management-group-scope/main.tf b/quickstart/101-virtual-network-manager-create-management-group-scope/main.tf new file mode 100644 index 00000000..ee33b209 --- /dev/null +++ b/quickstart/101-virtual-network-manager-create-management-group-scope/main.tf @@ -0,0 +1,166 @@ +# Create the Resource Group + +resource "random_pet" "rg_name" { + prefix = var.resource_group_name_prefix +} + +resource "azurerm_resource_group" "rg" { + location = var.resource_group_location + name = random_pet.rg_name.id +} + +# Create three virtual networks +resource "random_string" "prefix" { + length = 4 + special = false + upper = false +} + +resource "random_pet" "virtual_network_name" { + prefix = "vnet-${random_string.prefix.result}" +} +resource "azurerm_virtual_network" "vnet" { + count = 3 + + name = "${random_pet.virtual_network_name.id}-0${count.index}" + resource_group_name = azurerm_resource_group.rg.name + location = azurerm_resource_group.rg.location + address_space = ["10.${count.index}.0.0/16"] +} + +# Add a subnet to each virtual network + +resource "azurerm_subnet" "subnet_vnet" { + count = 3 + + name = "default" + virtual_network_name = azurerm_virtual_network.vnet[count.index].name + resource_group_name = azurerm_resource_group.rg.name + address_prefixes = ["10.${count.index}.0.0/24"] +} + +data "azurerm_subscription" "current" { +} + +# Create a Management Group + +resource "random_pet" "management_group_name" { + prefix = "AVNM-management-group" +} +resource "azurerm_management_group" "mg" { + display_name = random_pet.management_group_name.id + + subscription_ids = [ + data.azurerm_subscription.current.subscription_id, + ] +} + +# register Microsoft.Network to the Management Group + +resource "null_resource" "register_rp_to_mg" { + provisioner "local-exec" { + command = <