Whenever I try to run terraform plan its giving me an output error as below:
╷
│ Error: Unsupported attribute
│
│ on appservices.tf line 38, in module "windows_web_app":
│ 38: service-plan-id = module.app_service_plan[0].id
│ ├────────────────
│ │ module.app_service_plan[0] is a object
│
│ This object does not have an attribute named "id".```
This is my code:
data "terraform_remote_state" "resource-group-source" {
backend = "azurerm"
config = {
resource_group_name = local.settings.common.remote-state-config.resource_group_name
storage_account_name = local.settings.common.remote-state-config.storage_account_name
container_name = local.settings.common.remote-state-config.container_name
key = "tf.tfstate"
}
}
module "app_service_plan" {
source = "../../../modules/az-appservices"
count = local.settings.app_service_plan.inflate ? 1 : 0
name = local.settings.app_service_plan.app-name
location = data.terraform_remote_state.resource-group-source.outputs.app-team-rg[0].resource_group.location
resource-group-name = data.terraform_remote_state.resource-group-source.outputs.app-team-rg[0].resource_group.name
os-type = local.settings.app_service_plan.os-type
sku-name = local.settings.app_service_plan.sku-name
zone-balancing-enabled = local.settings.app_service_plan.zone-balancing-enabled
worker-count = local.settings.app_service_plan.worker-count
maximum-elastic-worker-count = local.settings.app_service_plan.maximum-elastic-worker-count
app-service-environment-id = local.settings.app_service_plan.app-service-environment-id
per-site-scaling-enabled = local.settings.app_service_plan.per-site-scaling-enabled
tags = local.settings.common.tags
}
module "windows_web_app" {
source = "../../../modules/az-webapp"
for_each = local.settings.web-app.inflate ? merge(local.app-settings, local.connection-strings) : {}
name = local.settings.web-app.name
location = data.terraform_remote_state.resource-group-source.outputs.app-team-rg[0].resource_group.location
resource-group-name = data.terraform_remote_state.resource-group-source.outputs.app-team-rg[0].resource_group.name
service-plan-id = module.app_service_plan[0].id
client-affinity-enabled = local.settings.web-app.client-affinity-enabled ? 1 : 0
client-certificate-enabled = local.settings.web-app.client-certificate-enabled ? 1 : 0
client-certificate-mode = local.settings.web-app.client-certificate-mode
# azurerm_service_plan.example.id
tags = local.settings.common.tags
https-only = local.settings.web-app.https-only ? 1 : 0
site-config = {
app-settings = [
{
name = each.value.name
value = each.value.value
},
]
connection-strings = [
{
name = each.value.name
type = each.value.type
value = each.value.value
},
]
# application-stack = [
# {
# current_stacke = each.value.value
# dotnet_version = each.value.value
# },
# ]
# current-stack = "dotnet"
# dotnet-version = "v7.0"
}
identity-type = local.settings.web-app.identity-type
always-on = local.settings.web-app.site-config[0].always-on ? 1 : 0
worker-count = local.settings.web-app.worker-count
http2-enabled = local.settings.web-app.http2-enabled ? 1 : 0
depends_on = [module.app_service_plan]
}
Any help be greatly appreciated!```
P.S i used terraform console and done “module.app_service_plan” and its just showing 2 empty square brackets like this “”