We have the following azurerm_app_service configuration:
resource "azurerm_app_service" "webapp" {
for_each = local.apsvc_map_with_locations
name = "${var.regional_web_rg[each.value.location].name}-${each.value.apsvc_name}-apsvc"
location = each.value.location
resource_group_name = var.regional_web_rg[each.value.location].name
app_service_plan_id = azurerm_app_service_plan.asp[each.value.location].id
https_only = true
site_config {
...
}
app_settings = {
...
}
dynamic "connection_string" {
for_each = var.sql_connection_strings
content {
name = connection_string.key
type = "SqlAzure"
value = connection_string.value
}
}
}
And the problem that every single deployment the connection strings are recreated. So, every single deployment the app services are modified for nothing, because there is no change there. The ironic part is that these connection strings are not even secret, because we use AAD authentication, so there is no password there.
Is there a way to stop this from happening and only every modify the azurerm_app_service if there are truly changes?