diff --git a/quickstart/201-web-app-docker-acr/acr.tf b/quickstart/201-web-app-docker-acr/acr.tf index 3c0c5ced..b7acd14e 100644 --- a/quickstart/201-web-app-docker-acr/acr.tf +++ b/quickstart/201-web-app-docker-acr/acr.tf @@ -1,11 +1,11 @@ locals { - acr_name = "${replace(var.dns_prefix, "-", "")}${replace(var.name, "-", "")}acr" + acr_name = "${replace(var.dns_prefix, "-", "")}${replace(random_pet.prefix.id, "-", "")}acr" } resource "azurerm_container_registry" "default" { - name = "${local.acr_name}" - resource_group_name = "${azurerm_resource_group.default.name}" - location = "${azurerm_resource_group.default.location}" - sku = "Standard" - admin_enabled = false + name = local.acr_name + resource_group_name = azurerm_resource_group.default.name + location = azurerm_resource_group.default.location + sku = "Standard" + admin_enabled = false } \ No newline at end of file diff --git a/quickstart/201-web-app-docker-acr/app_service.tf b/quickstart/201-web-app-docker-acr/app_service.tf index 5c907495..833232bd 100644 --- a/quickstart/201-web-app-docker-acr/app_service.tf +++ b/quickstart/201-web-app-docker-acr/app_service.tf @@ -1,27 +1,30 @@ - resource "azurerm_app_service_plan" "default" { - name = "${var.name}-plan" - location = "${azurerm_resource_group.default.location}" - resource_group_name = "${azurerm_resource_group.default.name}" + name = "${random_pet.prefix.id}-plan" + location = azurerm_resource_group.default.location + resource_group_name = azurerm_resource_group.default.name kind = "Linux" # Reserved must be set to true for Linux App Service Plans reserved = true sku { - tier = "${var.plan_tier}" - size = "${var.plan_sku}" + tier = var.plan_tier + size = var.plan_sku } } -resource "azurerm_app_service" "default" { - name = "${var.dns_prefix}-${var.name}-${var.environment}-app" - location = "${azurerm_resource_group.default.location}" - resource_group_name = "${azurerm_resource_group.default.name}" - app_service_plan_id = "${azurerm_app_service_plan.default.id}" +resource "azurerm_app_service" "main" { + name = "${var.dns_prefix}-${random_pet.prefix.id}-${var.environment}-app" + location = azurerm_resource_group.default.location + resource_group_name = azurerm_resource_group.default.name + app_service_plan_id = azurerm_app_service_plan.default.id + + identity { + type = "SystemAssigned" + } site_config { always_on = true linux_fx_version = "DOCKER|nginxdemos/hello" } -} +} \ No newline at end of file diff --git a/quickstart/201-web-app-docker-acr/azurerm_role_assignment.tf b/quickstart/201-web-app-docker-acr/azurerm_role_assignment.tf index fa6a3e35..c0bbf42e 100644 --- a/quickstart/201-web-app-docker-acr/azurerm_role_assignment.tf +++ b/quickstart/201-web-app-docker-acr/azurerm_role_assignment.tf @@ -1,5 +1,5 @@ resource "azurerm_role_assignment" "acr" { - scope = "${data.azurerm_subscription.current.id}/resourceGroups/${azurerm_resource_group.default.name}/providers/Microsoft.Web/serverFarms/${azurerm_app_service.default.name}" + scope = azurerm_app_service_plan.default.id role_definition_name = "Reader" - principal_id = "${azurerm_app_service.default.identity[0].principal_id}" + principal_id = azurerm_app_service.main.identity[0].principal_id } \ No newline at end of file diff --git a/quickstart/201-web-app-docker-acr/main.tf b/quickstart/201-web-app-docker-acr/main.tf index acaf6e4b..12241607 100644 --- a/quickstart/201-web-app-docker-acr/main.tf +++ b/quickstart/201-web-app-docker-acr/main.tf @@ -1,11 +1,12 @@ -provider "azurerm" { - version = "=1.36.1" -} - # Reference to the current subscription. Used when creating role assignments data "azurerm_subscription" "current" {} resource "azurerm_resource_group" "default" { - name = "${var.name}-${var.environment}-rg" - location = "${var.location}" + name = "${random_pet.prefix.id}-${var.environment}-rg" + location = var.location } + +resource "random_pet" "prefix" { + prefix = var.prefix + length = 2 +} \ No newline at end of file diff --git a/quickstart/201-web-app-docker-acr/providers.tf b/quickstart/201-web-app-docker-acr/providers.tf new file mode 100644 index 00000000..dc42605e --- /dev/null +++ b/quickstart/201-web-app-docker-acr/providers.tf @@ -0,0 +1,18 @@ +terraform { + required_version = ">= 1.0" + + required_providers { + azurerm = { + source = "hashicorp/azurerm" + version = ">= 3.0, < 4.0" + } + random = { + source = "hashicorp/random" + version = ">= 3.0" + } + } +} + +provider "azurerm" { + features {} +} \ No newline at end of file diff --git a/quickstart/201-web-app-docker-acr/variables.tf b/quickstart/201-web-app-docker-acr/variables.tf index ebdaa2cc..8a7c2ec0 100644 --- a/quickstart/201-web-app-docker-acr/variables.tf +++ b/quickstart/201-web-app-docker-acr/variables.tf @@ -1,35 +1,35 @@ -variable "name" { - type = "string" - description = "Location of the azure resource group." - default = "demo-tfquickstart" +variable "prefix" { + type = string + description = "Prefix of the resource name" + default = "web-app-docker-acr" } variable "environment" { - type = "string" + type = string description = "Name of the deployment environment" default = "dev" } variable "location" { - type = "string" + type = string description = "Location to deploy the resource group" - default = "West US 2" + default = "eastus" } variable "dns_prefix" { - type = "string" + type = string description = "A prefix for any dns based resources" default = "tfq" } variable "plan_tier" { - type = "string" + type = string description = "The tier of app service plan to create" default = "Standard" } variable "plan_sku" { - type = "string" + type = string description = "The sku of app service plan to create" default = "S1" }