I have Terraform provider block like below
provider “azurerm” {
alias = “abc”
subscription_id = “cdfg07……………….5efc083”
features {}
}
provider “azurerm” {
alias = “abc2”
subscription_id = “z48i5afa-…..59477”
features {}
}
provider “azurerm” {
alias = “abc3”
subscription_id = “z48i5adda-…..59434”
features {}
}
And variable block like below
variable “service_alert_environment_variables” {
type = map(object({
subscription = string
subscription_id = string
subscription_alias_name = string
}))
default = {
“abc” = {
subscription = “Sandbox”
subscription_id = “cdfg07……………….5efc083”
subscription_alias_name = “abc”
}
“abc2” = {
subscription = “Dev”
subscription_id = “z48i5afa-…..59477”
subscription_alias_name = “abc2”
}
“abc3” = {
subscription = “Prod”
subscription_id = “z48i5adda-…..59434”
subscription_alias_name = “abc3”
}
}
}
And Inside Module I am trying to get provider through for_each
module “service_health” {
source = “../module”
for_each = var.service_alert_environment_variables
providers = {
azurerm = azurerm.each.value.subscription_alias_name
}
subscriptionId = each.value.subscription_id
}
But it’s throwing error . Not supporting the attribute.