Skip to content

Conversation

StefanoDoc
Copy link
Contributor

No description provided.

@StefanoDoc StefanoDoc changed the title WIP:[IOPLT-1201]create itn resource for app-continua migration [#IOPLT-1201]create itn resource for app-continua migration Oct 6, 2025
@StefanoDoc StefanoDoc marked this pull request as ready for review October 6, 2025 10:00
@StefanoDoc StefanoDoc requested review from a team as code owners October 6, 2025 10:00
scale_action {
direction = "Increase"
type = "ChangeCount"
value = "5"
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Seems to be to much this value, usually we use 2 or 3

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

scale_action {
direction = "Decrease"
type = "ChangeCount"
value = "5"
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Scale down by 5 is dangerous, usually this value should be 1

Suggested change
value = "5"
value = "1"

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Comment on lines 6 to 10
# data "azurerm_subnet" "snet_appgw" {
# name = "${var.project}-appgateway-snet"
# virtual_network_name = local.vnet_name_common
# resource_group_name = local.resource_group_name_common
# }
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Add a comment to explain why this code is commented, or remove it.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Comment on lines 6 to 10
}

module "appservice_continua_itn" {
source = "pagopa-dx/azure-app-service/azurerm"
version = "~> 0.1.5"
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The last version of the module it's 2.0.0, can we use that?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@mamu0 mamu0 requested a review from a team as a code owner October 16, 2025 10:37
Copy link

Copy link

Tip

✅ All Terraform module locks are up to date

No module changes detected - everything is in sync!

📋 Pre-commit Output Log
[INFO] Initializing environment for https://github.com/pagopa/dx.
[INFO] Initializing environment for https://github.com/antonbabenko/pre-commit-terraform.
Lock Terraform Registry modules..........................................Passed

Generated on Thu Oct 16 10:38:40 UTC 2025
Run lock_modules on folder: src/common/dev/

Copy link

Tip

✅ All Terraform module locks are up to date

No module changes detected - everything is in sync!

📋 Pre-commit Output Log
[INFO] Initializing environment for https://github.com/pagopa/dx.
[INFO] Initializing environment for https://github.com/antonbabenko/pre-commit-terraform.
Lock Terraform Registry modules..........................................Passed

Generated on Thu Oct 16 10:38:49 UTC 2025
Run lock_modules on folder: src/common/prod/

Copy link

Tip

✅ All Terraform module locks are up to date

No module changes detected - everything is in sync!

📋 Pre-commit Output Log
[INFO] Initializing environment for https://github.com/pagopa/dx.
[INFO] Initializing environment for https://github.com/antonbabenko/pre-commit-terraform.
Terraform Providers Lock (on staged .terraform.lock.hcl files).......................Passed
- hook id: terraform_providers_lock_staged
- duration: 0.03s

No .terraform.lock.hcl files to process.

Lock Terraform Registry modules......................................................Passed
Terraform validate with tflint.......................................................Passed
Terraform fmt........................................................................Passed
terraform_docs on resources..........................................................Passed
Terraform validate...................................................................Passed
Terraform validate with trivy........................................................Passed

Generated on Thu Oct 16 10:38:56 UTC 2025
Run all checks on modified files

Copy link

📖 Terraform Plan (src/common/dev) - success

Show Plan
No changes detected.

Copy link

📖 Terraform Plan (src/common/prod) - success

Show Plan
  # module.application_gateway_itn.azurerm_web_application_firewall_policy.agw will be updated in-place
  ~ resource "azurerm_web_application_firewall_policy" "agw" {
        id                  = "/subscriptions/ec285037-c673-4f58-b594-d7c480da4e8b/resourceGroups/io-p-itn-common-rg-01/providers/Microsoft.Network/applicationGatewayWebApplicationFirewallPolicies/io-p-itn-agw-waf-01"
        name                = "io-p-itn-agw-waf-01"
        tags                = {
            "BusinessUnit"   = "App IO"
            "CostCenter"     = "TS000 - Tecnologia e Servizi"
            "CreatedBy"      = "Terraform"
            "Environment"    = "Prod"
            "ManagementTeam" = "IO Platform"
            "Source"         = "https://github.com/pagopa/io-infra/blob/main/src/common/prod"
        }
        # (4 unchanged attributes hidden)

      ~ policy_settings {
          ~ request_body_enforcement                  = false -> true
          ~ request_body_inspect_limit_in_kb          = 0 -> 128
            # (7 unchanged attributes hidden)
        }

        # (1 unchanged block hidden)
    }

  # module.application_gateway_itn.azurerm_web_application_firewall_policy.app will be updated in-place
  ~ resource "azurerm_web_application_firewall_policy" "app" {
        id                  = "/subscriptions/ec285037-c673-4f58-b594-d7c480da4e8b/resourceGroups/io-p-itn-common-rg-01/providers/Microsoft.Network/applicationGatewayWebApplicationFirewallPolicies/io-p-itn-agw-api-app-waf-01"
        name                = "io-p-itn-agw-api-app-waf-01"
        tags                = {
            "BusinessUnit"   = "App IO"
            "CostCenter"     = "TS000 - Tecnologia e Servizi"
            "CreatedBy"      = "Terraform"
            "Environment"    = "Prod"
            "ManagementTeam" = "IO Platform"
            "Source"         = "https://github.com/pagopa/io-infra/blob/main/src/common/prod"
        }
        # (4 unchanged attributes hidden)

      ~ policy_settings {
          ~ request_body_enforcement                  = false -> true
          ~ request_body_inspect_limit_in_kb          = 0 -> 128
            # (7 unchanged attributes hidden)
        }

        # (1 unchanged block hidden)
    }

  # module.application_gateway_weu.azurerm_web_application_firewall_policy.api_app will be updated in-place
  ~ resource "azurerm_web_application_firewall_policy" "api_app" {
        id                  = "/subscriptions/ec285037-c673-4f58-b594-d7c480da4e8b/resourceGroups/io-p-rg-external/providers/Microsoft.Network/applicationGatewayWebApplicationFirewallPolicies/io-p-waf-appgateway-api-app-policy"
        name                = "io-p-waf-appgateway-api-app-policy"
        tags                = {
            "BusinessUnit"   = "App IO"
            "CostCenter"     = "TS000 - Tecnologia e Servizi"
            "CreatedBy"      = "Terraform"
            "Environment"    = "Prod"
            "ManagementTeam" = "IO Platform"
            "Source"         = "https://github.com/pagopa/io-infra/blob/main/src/common/prod"
        }
        # (4 unchanged attributes hidden)

      ~ policy_settings {
          ~ request_body_enforcement                  = false -> true
          ~ request_body_inspect_limit_in_kb          = 0 -> 128
            # (7 unchanged attributes hidden)
        }

        # (1 unchanged block hidden)
    }

  # module.continua_app_service.azurerm_monitor_autoscale_setting.appservice_continua will be created
  + resource "azurerm_monitor_autoscale_setting" "appservice_continua" {
      + enabled             = true
      + id                  = (known after apply)
      + location            = "italynorth"
      + name                = "io-p-itn-continua-app-01-autoscale"
      + resource_group_name = "io-p-itn-continua-rg-01"
      + tags                = {
          + "BusinessUnit"   = "App IO"
          + "CostCenter"     = "TS000 - Tecnologia e Servizi"
          + "CreatedBy"      = "Terraform"
          + "Environment"    = "Prod"
          + "ManagementTeam" = "IO Platform"
          + "Source"         = "https://github.com/pagopa/io-infra/blob/main/src/common/prod"
        }
      + target_resource_id  = (known after apply)

      + profile {
          + name = "default"

          + capacity {
              + default = 1
              + maximum = 10
              + minimum = 1
            }

          + rule {
              + metric_trigger {
                  + divide_by_instance_count = false
                  + metric_name              = "CpuPercentage"
                  + metric_namespace         = "microsoft.web/serverfarms"
                  + metric_resource_id       = (known after apply)
                  + operator                 = "GreaterThan"
                  + statistic                = "Average"
                  + threshold                = 70
                  + time_aggregation         = "Average"
                  + time_grain               = "PT1M"
                  + time_window              = "PT5M"
                }
              + scale_action {
                  + cooldown  = "PT5M"
                  + direction = "Increase"
                  + type      = "ChangeCount"
                  + value     = 2
                }
            }
          + rule {
              + metric_trigger {
                  + divide_by_instance_count = false
                  + metric_name              = "CpuPercentage"
                  + metric_namespace         = "microsoft.web/serverfarms"
                  + metric_resource_id       = (known after apply)
                  + operator                 = "LessThan"
                  + statistic                = "Average"
                  + threshold                = 30
                  + time_aggregation         = "Average"
                  + time_grain               = "PT1M"
                  + time_window              = "PT20M"
                }
              + scale_action {
                  + cooldown  = "PT5M"
                  + direction = "Decrease"
                  + type      = "ChangeCount"
                  + value     = 1
                }
            }
        }
    }

  # module.continua_app_service.azurerm_resource_group.continua_itn_rg will be created
  + resource "azurerm_resource_group" "continua_itn_rg" {
      + id       = (known after apply)
      + location = "italynorth"
      + name     = "io-p-itn-continua-rg-01"
      + tags     = {
          + "BusinessUnit"   = "App IO"
          + "CostCenter"     = "TS000 - Tecnologia e Servizi"
          + "CreatedBy"      = "Terraform"
          + "Environment"    = "Prod"
          + "ManagementTeam" = "IO Platform"
          + "Source"         = "https://github.com/pagopa/io-infra/blob/main/src/common/prod"
        }
    }

  # module.continua_app_service.module.appservice_continua_itn.azurerm_linux_web_app.this will be created
  + resource "azurerm_linux_web_app" "this" {
      + app_settings                                   = (sensitive value)
      + client_affinity_enabled                        = false
      + client_certificate_enabled                     = false
      + client_certificate_mode                        = "Required"
      + custom_domain_verification_id                  = (sensitive value)
      + default_hostname                               = (known after apply)
      + enabled                                        = true
      + ftp_publish_basic_authentication_enabled       = true
      + hosting_environment_id                         = (known after apply)
      + https_only                                     = true
      + id                                             = (known after apply)
      + key_vault_reference_identity_id                = (known after apply)
      + kind                                           = (known after apply)
      + location                                       = "italynorth"
      + name                                           = "io-p-itn-continua-app-01"
      + outbound_ip_address_list                       = (known after apply)
      + outbound_ip_addresses                          = (known after apply)
      + possible_outbound_ip_address_list              = (known after apply)
      + possible_outbound_ip_addresses                 = (known after apply)
      + public_network_access_enabled                  = false
      + resource_group_name                            = "io-p-itn-continua-rg-01"
      + service_plan_id                                = (known after apply)
      + site_credential                                = (sensitive value)
      + tags                                           = {
          + "BusinessUnit"   = "App IO"
          + "CostCenter"     = "TS000 - Tecnologia e Servizi"
          + "CreatedBy"      = "Terraform"
          + "Environment"    = "Prod"
          + "ManagementTeam" = "IO Platform"
          + "ModuleName"     = "azure_app_service"
          + "ModuleSource"   = "DX"
          + "ModuleVersion"  = "2.0.0"
          + "Source"         = "https://github.com/pagopa/io-infra/blob/main/src/common/prod"
        }
      + virtual_network_backup_restore_enabled         = false
      + virtual_network_subnet_id                      = (known after apply)
      + vnet_image_pull_enabled                        = false
      + webdeploy_publish_basic_authentication_enabled = true
      + zip_deploy_file                                = (known after apply)

      + identity {
          + principal_id = (known after apply)
          + tenant_id    = (known after apply)
          + type         = "SystemAssigned"
        }

      + site_config {
          + always_on                               = true
          + container_registry_use_managed_identity = false
          + default_documents                       = (known after apply)
          + detailed_error_logging_enabled          = (known after apply)
          + ftps_state                              = "Disabled"
          + health_check_eviction_time_in_min       = 2
          + health_check_path                       = "/health"
          + http2_enabled                           = true
          + ip_restriction_default_action           = "Deny"
          + linux_fx_version                        = (known after apply)
          + load_balancing_mode                     = "LeastRequests"
          + local_mysql_enabled                     = false
          + managed_pipeline_mode                   = "Integrated"
          + minimum_tls_version                     = "1.2"
          + remote_debugging_enabled                = false
          + remote_debugging_version                = (known after apply)
          + scm_ip_restriction_default_action       = "Allow"
          + scm_minimum_tls_version                 = "1.2"
          + scm_type                                = (known after apply)
          + scm_use_main_ip_restriction             = false
          + use_32_bit_worker                       = true
          + vnet_route_all_enabled                  = true
          + websockets_enabled                      = false
          + worker_count                            = (known after apply)

          + application_stack {
              + node_version = "20-lts"
            }
        }
    }

  # module.continua_app_service.module.appservice_continua_itn.azurerm_linux_web_app_slot.this[0] will be created
  + resource "azurerm_linux_web_app_slot" "this" {
      + app_metadata                                   = (known after apply)
      + app_service_id                                 = (known after apply)
      + app_settings                                   = (sensitive value)
      + client_affinity_enabled                        = false
      + client_certificate_enabled                     = false
      + client_certificate_mode                        = "Required"
      + custom_domain_verification_id                  = (sensitive value)
      + default_hostname                               = (known after apply)
      + enabled                                        = true
      + ftp_publish_basic_authentication_enabled       = true
      + hosting_environment_id                         = (known after apply)
      + https_only                                     = true
      + id                                             = (known after apply)
      + key_vault_reference_identity_id                = (known after apply)
      + kind                                           = (known after apply)
      + name                                           = "staging"
      + outbound_ip_address_list                       = (known after apply)
      + outbound_ip_addresses                          = (known after apply)
      + possible_outbound_ip_address_list              = (known after apply)
      + possible_outbound_ip_addresses                 = (known after apply)
      + public_network_access_enabled                  = false
      + site_credential                                = (sensitive value)
      + tags                                           = {
          + "BusinessUnit"   = "App IO"
          + "CostCenter"     = "TS000 - Tecnologia e Servizi"
          + "CreatedBy"      = "Terraform"
          + "Environment"    = "Prod"
          + "ManagementTeam" = "IO Platform"
          + "ModuleName"     = "azure_app_service"
          + "ModuleSource"   = "DX"
          + "ModuleVersion"  = "2.0.0"
          + "Source"         = "https://github.com/pagopa/io-infra/blob/main/src/common/prod"
        }
      + virtual_network_backup_restore_enabled         = false
      + virtual_network_subnet_id                      = (known after apply)
      + vnet_image_pull_enabled                        = false
      + webdeploy_publish_basic_authentication_enabled = true
      + zip_deploy_file                                = (known after apply)

      + identity {
          + principal_id = (known after apply)
          + tenant_id    = (known after apply)
          + type         = "SystemAssigned"
        }

      + site_config {
          + always_on                               = true
          + container_registry_use_managed_identity = false
          + default_documents                       = (known after apply)
          + detailed_error_logging_enabled          = (known after apply)
          + ftps_state                              = "Disabled"
          + health_check_eviction_time_in_min       = 2
          + health_check_path                       = "/health"
          + http2_enabled                           = true
          + ip_restriction_default_action           = "Deny"
          + linux_fx_version                        = (known after apply)
          + load_balancing_mode                     = "LeastRequests"
          + local_mysql_enabled                     = false
          + managed_pipeline_mode                   = "Integrated"
          + minimum_tls_version                     = "1.2"
          + remote_debugging_enabled                = false
          + remote_debugging_version                = (known after apply)
          + scm_ip_restriction_default_action       = "Allow"
          + scm_minimum_tls_version                 = "1.2"
          + scm_type                                = (known after apply)
          + scm_use_main_ip_restriction             = false
          + use_32_bit_worker                       = true
          + vnet_route_all_enabled                  = true
          + websockets_enabled                      = false
          + worker_count                            = (known after apply)

          + application_stack {
              + node_version = "20-lts"
            }
        }
    }

  # module.continua_app_service.module.appservice_continua_itn.azurerm_private_endpoint.app_service_sites will be created
  + resource "azurerm_private_endpoint" "app_service_sites" {
      + custom_dns_configs       = (known after apply)
      + id                       = (known after apply)
      + location                 = "italynorth"
      + name                     = "io-p-itn-continua-app-pep-01"
      + network_interface        = (known after apply)
      + private_dns_zone_configs = (known after apply)
      + resource_group_name      = "io-p-itn-continua-rg-01"
      + subnet_id                = "/subscriptions/ec285037-c673-4f58-b594-d7c480da4e8b/resourceGroups/io-p-itn-common-rg-01/providers/Microsoft.Network/virtualNetworks/io-p-itn-common-vnet-01/subnets/io-p-itn-pep-snet-01"
      + tags                     = {
          + "BusinessUnit"   = "App IO"
          + "CostCenter"     = "TS000 - Tecnologia e Servizi"
          + "CreatedBy"      = "Terraform"
          + "Environment"    = "Prod"
          + "ManagementTeam" = "IO Platform"
          + "ModuleName"     = "azure_app_service"
          + "ModuleSource"   = "DX"
          + "ModuleVersion"  = "2.0.0"
          + "Source"         = "https://github.com/pagopa/io-infra/blob/main/src/common/prod"
        }

      + private_dns_zone_group {
          + id                   = (known after apply)
          + name                 = "private-dns-zone-group"
          + private_dns_zone_ids = [
              + "/subscriptions/ec285037-c673-4f58-b594-d7c480da4e8b/resourceGroups/io-p-rg-common/providers/Microsoft.Network/privateDnsZones/privatelink.azurewebsites.net",
            ]
        }

      + private_service_connection {
          + is_manual_connection           = false
          + name                           = "io-p-itn-continua-app-pep-01"
          + private_connection_resource_id = (known after apply)
          + private_ip_address             = (known after apply)
          + subresource_names              = [
              + "sites",
            ]
        }
    }

  # module.continua_app_service.module.appservice_continua_itn.azurerm_private_endpoint.staging_app_service_sites[0] will be created
  + resource "azurerm_private_endpoint" "staging_app_service_sites" {
      + custom_dns_configs       = (known after apply)
      + id                       = (known after apply)
      + location                 = "italynorth"
      + name                     = "io-p-itn-continua-staging-app-pep-01"
      + network_interface        = (known after apply)
      + private_dns_zone_configs = (known after apply)
      + resource_group_name      = "io-p-itn-continua-rg-01"
      + subnet_id                = "/subscriptions/ec285037-c673-4f58-b594-d7c480da4e8b/resourceGroups/io-p-itn-common-rg-01/providers/Microsoft.Network/virtualNetworks/io-p-itn-common-vnet-01/subnets/io-p-itn-pep-snet-01"
      + tags                     = {
          + "BusinessUnit"   = "App IO"
          + "CostCenter"     = "TS000 - Tecnologia e Servizi"
          + "CreatedBy"      = "Terraform"
          + "Environment"    = "Prod"
          + "ManagementTeam" = "IO Platform"
          + "ModuleName"     = "azure_app_service"
          + "ModuleSource"   = "DX"
          + "ModuleVersion"  = "2.0.0"
          + "Source"         = "https://github.com/pagopa/io-infra/blob/main/src/common/prod"
        }

      + private_dns_zone_group {
          + id                   = (known after apply)
          + name                 = "private-dns-zone-group"
          + private_dns_zone_ids = [
              + "/subscriptions/ec285037-c673-4f58-b594-d7c480da4e8b/resourceGroups/io-p-rg-common/providers/Microsoft.Network/privateDnsZones/privatelink.azurewebsites.net",
            ]
        }

      + private_service_connection {
          + is_manual_connection           = false
          + name                           = "io-p-itn-continua-staging-app-pep-01"
          + private_connection_resource_id = (known after apply)
          + private_ip_address             = (known after apply)
          + subresource_names              = [
              + "sites-staging",
            ]
        }
    }

  # module.continua_app_service.module.appservice_continua_itn.azurerm_service_plan.this[0] will be created
  + resource "azurerm_service_plan" "this" {
      + id                              = (known after apply)
      + kind                            = (known after apply)
      + location                        = "italynorth"
      + maximum_elastic_worker_count    = (known after apply)
      + name                            = "io-p-itn-continua-asp-01"
      + os_type                         = "Linux"
      + per_site_scaling_enabled        = false
      + premium_plan_auto_scale_enabled = false
      + reserved                        = (known after apply)
      + resource_group_name             = "io-p-itn-continua-rg-01"
      + sku_name                        = "P1v3"
      + tags                            = {
          + "BusinessUnit"   = "App IO"
          + "CostCenter"     = "TS000 - Tecnologia e Servizi"
          + "CreatedBy"      = "Terraform"
          + "Environment"    = "Prod"
          + "ManagementTeam" = "IO Platform"
          + "ModuleName"     = "azure_app_service"
          + "ModuleSource"   = "DX"
          + "ModuleVersion"  = "2.0.0"
          + "Source"         = "https://github.com/pagopa/io-infra/blob/main/src/common/prod"
        }
      + worker_count                    = (known after apply)
      + zone_balancing_enabled          = true
    }

  # module.continua_app_service.module.appservice_continua_itn.azurerm_subnet.this[0] will be created
  + resource "azurerm_subnet" "this" {
      + address_prefixes                              = [
          + "10.20.35.0/26",
        ]
      + default_outbound_access_enabled               = true
      + id                                            = (known after apply)
      + name                                          = "io-p-itn-continua-app-snet-01"
      + private_endpoint_network_policies             = "Disabled"
      + private_link_service_network_policies_enabled = true
      + resource_group_name                           = "io-p-itn-common-rg-01"
      + virtual_network_name                          = "io-p-itn-common-vnet-01"

      + delegation {
          + name = "default"

          + service_delegation {
              + actions = [
                  + "Microsoft.Network/virtualNetworks/subnets/action",
                ]
              + name    = "Microsoft.Web/serverFarms"
            }
        }
    }

  # module.function_app_admin.module.function_admin_itn.azurerm_monitor_metric_alert.function_app_health_check[0] will be updated in-place
  ~ resource "azurerm_monitor_metric_alert" "function_app_health_check" {
      ~ enabled                  = false -> true
        id                       = "/subscriptions/ec285037-c673-4f58-b594-d7c480da4e8b/resourceGroups/io-p-itn-platform-admin-rg-01/providers/Microsoft.Insights/metricAlerts/[io-p-itn-admin-func-01] Health Check Failed"
        name                     = "[io-p-itn-admin-func-01] Health Check Failed"
        tags                     = {
            "BusinessUnit"   = "App IO"
            "CostCenter"     = "TS000 - Tecnologia e Servizi"
            "CreatedBy"      = "Terraform"
            "Environment"    = "Prod"
            "ManagementTeam" = "IO Platform"
            "ModuleName"     = "azure_function_app"
            "ModuleSource"   = "DX"
            "ModuleVersion"  = "3.0.0"
            "Source"         = "https://github.com/pagopa/io-infra/blob/main/src/common/prod"
        }
        # (9 unchanged attributes hidden)

        # (2 unchanged blocks hidden)
    }

  # module.function_app_services.module.function_services_dx.azurerm_linux_function_app.this will be updated in-place
  ~ resource "azurerm_linux_function_app" "this" {
      ~ app_settings                                   = {
          + "APPINSIGHTS_INSTRUMENTATIONKEY"                  = "[REDACTED]"
            # (61 unchanged elements hidden)
        }
        id                                             = "/subscriptions/ec285037-c673-4f58-b594-d7c480da4e8b/resourceGroups/io-p-itn-funcsvc-rg-01/providers/Microsoft.Web/sites/io-p-itn-funcsvc-func-01"
        name                                           = "io-p-itn-funcsvc-func-01"
        tags                                           = {
            "BusinessUnit"                           = "App IO"
            "CostCenter"                             = "TS000 - Tecnologia e Servizi"
            "CreatedBy"                              = "Terraform"
            "Environment"                            = "Prod"
            "ManagementTeam"                         = "IO Platform"
            "ModuleName"                             = "azure_function_app"
            "ModuleSource"                           = "DX"
            "ModuleVersion"                          = "2.0.2"
            "Source"                                 = "https://github.com/pagopa/io-infra/blob/main/src/common/prod"
            "hidden-link: /app-insights-resource-id" = "[REDACTED]"
        }
        # (33 unchanged attributes hidden)

        # (3 unchanged blocks hidden)
    }

  # module.function_app_services.module.function_services_dx.azurerm_linux_function_app_slot.this[0] will be updated in-place
  ~ resource "azurerm_linux_function_app_slot" "this" {
      ~ app_settings                                   = {
          + "APPINSIGHTS_INSTRUMENTATIONKEY"                  = "[REDACTED]"
            # (61 unchanged elements hidden)
        }
        id                                             = "/subscriptions/ec285037-c673-4f58-b594-d7c480da4e8b/resourceGroups/io-p-itn-funcsvc-rg-01/providers/Microsoft.Web/sites/io-p-itn-funcsvc-func-01/slots/staging"
        name                                           = "staging"
        tags                                           = {
            "BusinessUnit"   = "App IO"
            "CostCenter"     = "TS000 - Tecnologia e Servizi"
            "CreatedBy"      = "Terraform"
            "Environment"    = "Prod"
            "ManagementTeam" = "IO Platform"
            "ModuleName"     = "azure_function_app"
            "ModuleSource"   = "DX"
            "ModuleVersion"  = "2.0.2"
            "Source"         = "https://github.com/pagopa/io-infra/blob/main/src/common/prod"
        }
        # (31 unchanged attributes hidden)

      ~ site_config {
          - application_insights_key                      = (sensitive value) -> null
          ~ health_check_eviction_time_in_min             = 0 -> 2
            # (32 unchanged attributes hidden)

            # (1 unchanged block hidden)
        }

        # (1 unchanged block hidden)
    }

  # module.platform_api_gateway_apim_itn.module.platform_api_gateway.azurerm_api_management.this will be updated in-place
  ~ resource "azurerm_api_management" "this" {
        id                            = "/subscriptions/ec285037-c673-4f58-b594-d7c480da4e8b/resourceGroups/io-p-itn-common-rg-01/providers/Microsoft.ApiManagement/service/io-p-itn-platform-api-gateway-apim-01"
        name                          = "io-p-itn-platform-api-gateway-apim-01"
        tags                          = {
            "BusinessUnit"   = "App IO"
            "CostCenter"     = "TS000 - Tecnologia e Servizi"
            "CreatedBy"      = "Terraform"
            "Environment"    = "Prod"
            "ManagementTeam" = "IO Platform"
            "ModuleName"     = "azure_api_management"
            "ModuleSource"   = "DX"
            "ModuleVersion"  = "1.2.2"
            "Source"         = "https://github.com/pagopa/io-infra/blob/main/src/common/prod"
        }
        # (21 unchanged attributes hidden)

      ~ hostname_configuration {
          ~ proxy {
              ~ default_ssl_binding             = true -> false
                # (12 unchanged attributes hidden)
            }

            # (1 unchanged block hidden)
        }

        # (8 unchanged blocks hidden)
    }

  # module.platform_service_bus_namespace_itn.module.platform_service_bus_namespace.data.azurerm_private_dns_zone.this[0] will be read during apply
  # (depends on a resource or a module with changes pending)
 <= data "azurerm_private_dns_zone" "this" {
      + id                                                    = (known after apply)
      + max_number_of_record_sets                             = (known after apply)
      + max_number_of_virtual_network_links                   = (known after apply)
      + max_number_of_virtual_network_links_with_registration = (known after apply)
      + name                                                  = "privatelink.servicebus.windows.net"
      + number_of_record_sets                                 = (known after apply)
      + resource_group_name                                   = "io-p-evt-rg"
    }

  # module.platform_service_bus_namespace_itn.module.platform_service_bus_namespace.azurerm_private_endpoint.service_bus_pep[0] will be updated in-place
  ~ resource "azurerm_private_endpoint" "service_bus_pep" {
        id                            = "/subscriptions/ec285037-c673-4f58-b594-d7c480da4e8b/resourceGroups/io-p-itn-common-rg-01/providers/Microsoft.Network/privateEndpoints/io-p-itn-platform-sbns-pep-01"
        name                          = "io-p-itn-platform-sbns-pep-01"
        tags                          = {
            "BusinessUnit"   = "App IO"
            "CostCenter"     = "TS000 - Tecnologia e Servizi"
            "CreatedBy"      = "Terraform"
            "Environment"    = "Prod"
            "ManagementTeam" = "IO Platform"
            "ModuleName"     = "azure_service_bus_namespace"
            "ModuleSource"   = "DX"
            "ModuleVersion"  = "0.0.6"
            "Source"         = "https://github.com/pagopa/io-infra/blob/main/src/common/prod"
        }
        # (7 unchanged attributes hidden)

      ~ private_dns_zone_group {
            id                   = "/subscriptions/ec285037-c673-4f58-b594-d7c480da4e8b/resourceGroups/io-p-itn-common-rg-01/providers/Microsoft.Network/privateEndpoints/io-p-itn-platform-sbns-pep-01/privateDnsZoneGroups/private-dns-zone-group"
            name                 = "private-dns-zone-group"
          ~ private_dns_zone_ids = [
              - "/subscriptions/ec285037-c673-4f58-b594-d7c480da4e8b/resourceGroups/io-p-evt-rg/providers/Microsoft.Network/privateDnsZones/privatelink.servicebus.windows.net",
            ] -> (known after apply)
        }

        # (1 unchanged block hidden)
    }

Plan: 8 to add, 8 to change, 0 to destroy.

Warning: Argument is deprecated

  with module.apim_itn.module.apim.azurerm_api_management.this,
  on .terraform/modules/apim_itn.apim/main.tf line 18, in resource "azurerm_api_management" "this":
  18: resource "azurerm_api_management" "this" {

`key_vault_id` has been deprecated in favour of `key_vault_certificate_id`
and will be removed in v5.0 of the AzureRM provider

(and 7 more similar warnings elsewhere)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants