From 77c841daa2ce2dae49809c01a4a9d4519a8c2b13 Mon Sep 17 00:00:00 2001 From: Dingjia Chen <48020536+Pumpkin-3906@users.noreply.github.com> Date: Mon, 13 Feb 2023 23:37:44 -0600 Subject: [PATCH] 201-confidential-vmss patch (#142) * fix 201-confidential-vmss example --- quickstart/201-confidential-vmss/main.tf | 33 +++++++++++++------ quickstart/201-confidential-vmss/outputs.tf | 20 +++++++++++ quickstart/201-confidential-vmss/providers.tf | 8 +++-- quickstart/201-confidential-vmss/variables.tf | 10 ++---- 4 files changed, 52 insertions(+), 19 deletions(-) create mode 100644 quickstart/201-confidential-vmss/outputs.tf diff --git a/quickstart/201-confidential-vmss/main.tf b/quickstart/201-confidential-vmss/main.tf index 6ced7db2..a82747c4 100644 --- a/quickstart/201-confidential-vmss/main.tf +++ b/quickstart/201-confidential-vmss/main.tf @@ -1,33 +1,33 @@ resource "azurerm_resource_group" "example" { - name = "${var.name_prefix}-rg" + name = "${random_pet.random_prefix.id}-rg" location = var.location } resource "azurerm_virtual_network" "example" { - name = "${var.name_prefix}-vnet" + name = "${random_pet.random_prefix.id}-vnet" address_space = ["10.0.0.0/16"] location = azurerm_resource_group.example.location resource_group_name = azurerm_resource_group.example.name } resource "azurerm_subnet" "example" { - name = "${var.name_prefix}-subnet" + name = "${random_pet.random_prefix.id}-subnet" resource_group_name = azurerm_resource_group.example.name virtual_network_name = azurerm_virtual_network.example.name address_prefixes = ["10.0.2.0/24"] } -resource "azurerm_windows_virtual_machine_scale_set" "example" { - name = "${var.name_prefix}-vmss" - resource_group_name = azurerm_resource_group.example.name - location = azurerm_resource_group.example.location +resource "azurerm_windows_virtual_machine_scale_set" "main" { + name = "${random_pet.random_prefix.id}-vmss" + resource_group_name = azurerm_resource_group.example.name + location = azurerm_resource_group.example.location # Available skus for Confidential VMSS can be found at: https://docs.microsoft.com/azure/confidential-computing/confidential-vm-overview - sku = "Standard_DC2as_v5" - + sku = "Standard_DC2as_v5" + instances = 2 admin_username = "adminuser" - admin_password = var.admin_password + admin_password = random_password.password.result computer_name_prefix = "vmss" source_image_reference { @@ -56,3 +56,16 @@ resource "azurerm_windows_virtual_machine_scale_set" "example" { vtpm_enabled = true secure_boot_enabled = true } + +resource "random_password" "password" { + length = 20 + min_lower = 1 + min_upper = 1 + min_numeric = 1 + min_special = 1 + special = true +} + +resource "random_pet" "random_prefix" { + prefix = var.name_prefix +} \ No newline at end of file diff --git a/quickstart/201-confidential-vmss/outputs.tf b/quickstart/201-confidential-vmss/outputs.tf new file mode 100644 index 00000000..bd5e0544 --- /dev/null +++ b/quickstart/201-confidential-vmss/outputs.tf @@ -0,0 +1,20 @@ +output "admin_password" { + sensitive = true + value = azurerm_windows_virtual_machine_scale_set.main.admin_password +} + +output "resource_group_name" { + value = azurerm_resource_group.example.name +} + +output "virtual_network_name" { + value = azurerm_virtual_network.example.name +} + +output "subnet_name" { + value = azurerm_subnet.example.name +} + +output "windows_virtual_machine_scale_set_name" { + value = azurerm_windows_virtual_machine_scale_set.main.name +} \ No newline at end of file diff --git a/quickstart/201-confidential-vmss/providers.tf b/quickstart/201-confidential-vmss/providers.tf index 6b2a6509..8f8428e3 100644 --- a/quickstart/201-confidential-vmss/providers.tf +++ b/quickstart/201-confidential-vmss/providers.tf @@ -1,10 +1,14 @@ terraform { - required_version = ">=1.0" + required_version = ">= 1.0" required_providers { azurerm = { source = "hashicorp/azurerm" - version = "~>3.8" + version = ">= 3.0, < 4.0" + } + random = { + source = "hashicorp/random" + version = ">= 3.0" } } } diff --git a/quickstart/201-confidential-vmss/variables.tf b/quickstart/201-confidential-vmss/variables.tf index 762681e0..03f8f88f 100644 --- a/quickstart/201-confidential-vmss/variables.tf +++ b/quickstart/201-confidential-vmss/variables.tf @@ -1,15 +1,11 @@ -variable "admin_password" { - type = string - sensitive = true - description = "Admin password of the virtual machine scale set" -} - variable "location" { type = string + default = "westus" description = "Location where resources will be created" } variable "name_prefix" { type = string + default = "201-confidential-vmss" description = "Prefix of the resource name" -} +} \ No newline at end of file