Skip to content

Conversation

christian-calabrese
Copy link
Contributor

@christian-calabrese christian-calabrese commented Jun 24, 2025

Added the following common outputs: subscription_id, tenant_id, apim, service_bus_namespace, log_analytics_workspace, key_vault

Copy link

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

Terraform Plan
module.apim_itn.data.azurerm_linux_web_app.cgn_pe_backend_app_01: Still reading... [10s elapsed]
data.azurerm_linux_function_app.wallet_user: Still reading... [10s elapsed]
data.azurerm_linux_function_app.services_app_backend_function_app: Still reading... [10s elapsed]
data.azurerm_linux_function_app.eucovidcert: Still reading... [10s elapsed]
module.application_gateway_weu.data.azurerm_linux_web_app.ipatente_practices_app_itn: Still reading... [10s elapsed]
module.application_gateway_weu.data.azurerm_linux_web_app.appservice_devportal_be: Still reading... [10s elapsed]
module.application_gateway_weu.data.azurerm_linux_web_app.ipatente_licences_app_itn: Still reading... [10s elapsed]
module.application_gateway_weu.data.azurerm_linux_web_app.ipatente_vehicles_app_itn: Still reading... [10s elapsed]
module.application_gateway_weu.data.azurerm_linux_web_app.cms_backoffice_app_itn: Still reading... [10s elapsed]
data.azurerm_linux_function_app.io_sign_user: Still reading... [10s elapsed]
data.azurerm_linux_function_app.io_sign_user: Still reading... [20s elapsed]
module.application_gateway_weu.data.azurerm_linux_web_app.appservice_selfcare_be: Still reading... [10s elapsed]
data.azurerm_linux_function_app.lollipop_function: Still reading... [10s elapsed]
data.azurerm_linux_function_app.function_assets_cdn: Still reading... [10s elapsed]
data.azurerm_linux_function_app.function_profile: Still reading... [10s elapsed]
data.azurerm_linux_function_app.com_citizen_func: Still reading... [10s elapsed]
data.azurerm_linux_web_app.firmaconio_selfcare_web_app: Still reading... [10s elapsed]
data.azurerm_linux_function_app.io_fims_user: Still reading... [10s elapsed]
module.application_gateway_weu.data.azurerm_linux_web_app.fims_op_app: Still reading... [10s elapsed]
module.application_gateway_weu.data.azurerm_linux_web_app.appservice_continua: Still reading... [10s elapsed]
module.application_gateway_weu.data.azurerm_linux_web_app.ipatente_payments_app_itn: Still reading... [10s elapsed]
module.application_gateway_weu.data.azurerm_linux_web_app.session_manager_03: Still reading... [10s elapsed]
module.application_gateway_weu.data.azurerm_linux_web_app.session_manager_03: Still reading... [20s elapsed]

Note: Objects have changed outside of Terraform

Terraform detected the following changes made outside of Terraform since the
last "terraform apply" which may have affected this plan:

  # module.global.module.dns.azurerm_private_dns_zone.privatelink_postgres_database_azure_com has changed
  ~ resource "azurerm_private_dns_zone" "privatelink_postgres_database_azure_com" {
        id                                                    = "/subscriptions/ec285037-c673-4f58-b594-d7c480da4e8b/resourceGroups/io-p-rg-common/providers/Microsoft.Network/privateDnsZones/privatelink.postgres.database.azure.com"
        name                                                  = "privatelink.postgres.database.azure.com"
      ~ number_of_record_sets                                 = 6 -> 5
        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)

        # (1 unchanged block hidden)
    }


Unless you have made equivalent changes to your configuration, or ignored the
relevant attributes using ignore_changes, the following plan may include
actions to undo or respond to these changes.

─────────────────────────────────────────────────────────────────────────────

Terraform used the selected providers to generate the following execution
plan. Resource actions are indicated with the following symbols:
  ~ update in-place
  - destroy
 <= read (data resources)

Terraform will perform the following actions:

  # module.app_backend_weu["1"].azurerm_key_vault_secret.appbackend_LOLLIPOP_ASSERTIONS_STORAGE[0] will be destroyed
  # (because azurerm_key_vault_secret.appbackend_LOLLIPOP_ASSERTIONS_STORAGE is not in configuration)
  - resource "azurerm_key_vault_secret" "appbackend_LOLLIPOP_ASSERTIONS_STORAGE" {
      - content_type            = "string" -> null
      - id                      = "https://io-p-kv-common.vault.azure.net/secrets/appbackend-LOLLIPOP-ASSERTIONS-STORAGE/5a032482d59442a097106b1b18f1d38b" -> null
      - key_vault_id            = "/subscriptions/ec285037-c673-4f58-b594-d7c480da4e8b/resourceGroups/io-p-rg-common/providers/Microsoft.KeyVault/vaults/io-p-kv-common" -> null
      - name                    = "appbackend-LOLLIPOP-ASSERTIONS-STORAGE" -> null
      - resource_id             = "/subscriptions/ec285037-c673-4f58-b594-d7c480da4e8b/resourceGroups/io-p-rg-common/providers/Microsoft.KeyVault/vaults/io-p-kv-common/secrets/appbackend-LOLLIPOP-ASSERTIONS-STORAGE/versions/5a032482d59442a097106b1b18f1d38b" -> null
      - resource_versionless_id = "/subscriptions/ec285037-c673-4f58-b594-d7c480da4e8b/resourceGroups/io-p-rg-common/providers/Microsoft.KeyVault/vaults/io-p-kv-common/secrets/appbackend-LOLLIPOP-ASSERTIONS-STORAGE" -> null
      - tags                    = {} -> null
      - value                   = (sensitive value) -> null
      - value_wo_version        = 0 -> null
      - version                 = "5a032482d59442a097106b1b18f1d38b" -> null
      - versionless_id          = "https://io-p-kv-common.vault.azure.net/secrets/appbackend-LOLLIPOP-ASSERTIONS-STORAGE" -> null
    }

  # 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.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.3"
            "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: 0 to add, 4 to change, 1 to destroy.

Changes to Outputs:
  + key_vault                      = {
      + itn = null
      + weu = {
          + kv        = {
              + id                  = "/subscriptions/ec285037-c673-4f58-b594-d7c480da4e8b/resourceGroups/io-p-sec-rg/providers/Microsoft.KeyVault/vaults/io-p-kv"
              + name                = "io-p-kv"
              + resource_group_name = "io-p-sec-rg"
            }
          + kv_common = {
              + id                  = "/subscriptions/ec285037-c673-4f58-b594-d7c480da4e8b/resourceGroups/io-p-rg-common/providers/Microsoft.KeyVault/vaults/io-p-kv-common"
              + name                = "io-p-kv-common"
              + resource_group_name = "io-p-rg-common"
            }
        }
    }
  + log_analytics_workspace        = {
      + id                  = "/subscriptions/ec285037-c673-4f58-b594-d7c480da4e8b/resourceGroups/io-p-rg-common/providers/Microsoft.OperationalInsights/workspaces/io-p-law-common"
      + name                = "io-p-law-common"
      + resource_group_name = "io-p-rg-common"
    }
  + platform_service_bus_namespace = {
      + namespace = {
          + id                  = "/subscriptions/ec285037-c673-4f58-b594-d7c480da4e8b/resourceGroups/io-p-itn-common-rg-01/providers/Microsoft.ServiceBus/namespaces/io-p-itn-platform-sbns-01"
          + name                = "io-p-itn-platform-sbns-01"
          + resource_group_name = "io-p-itn-common-rg-01"
        }
    }

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 23 more similar warnings elsewhere)

─────────────────────────────────────────────────────────────────────────────

Note: You didn't use the -out option to save this plan, so Terraform can't
guarantee to take exactly these actions if you run "terraform apply" now.

@pagopa pagopa deleted a comment from github-actions bot Jun 26, 2025
@pagopa pagopa deleted a comment from github-actions bot Jun 26, 2025
@pagopa pagopa deleted a comment from github-actions bot Jun 26, 2025
@pagopa pagopa deleted a comment from github-actions bot Jun 26, 2025
@pagopa pagopa deleted a comment from github-actions bot Jun 26, 2025
@pagopa pagopa deleted a comment from github-actions bot Jun 26, 2025
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 Jun 26 09:57:35 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 Jun 26 09:57:51 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 Jun 26 09:57:54 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.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.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.3"
            "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: 0 to add, 4 to change, 0 to destroy.

Changes to Outputs:
  + key_vault                      = {
      + itn = null
      + weu = {
          + kv        = {
              + id                  = "/subscriptions/ec285037-c673-4f58-b594-d7c480da4e8b/resourceGroups/io-p-sec-rg/providers/Microsoft.KeyVault/vaults/io-p-kv"
              + name                = "io-p-kv"
              + resource_group_name = "io-p-sec-rg"
            }
          + kv_common = {
              + id                  = "/subscriptions/ec285037-c673-4f58-b594-d7c480da4e8b/resourceGroups/io-p-rg-common/providers/Microsoft.KeyVault/vaults/io-p-kv-common"
              + name                = "io-p-kv-common"
              + resource_group_name = "io-p-rg-common"
            }
        }
    }
  + log_analytics_workspace        = {
      + id                  = "/subscriptions/ec285037-c673-4f58-b594-d7c480da4e8b/resourceGroups/io-p-rg-common/providers/Microsoft.OperationalInsights/workspaces/io-p-law-common"
      + name                = "io-p-law-common"
      + resource_group_name = "io-p-rg-common"
    }
  + platform_service_bus_namespace = {
      + namespace = {
          + id                  = "/subscriptions/ec285037-c673-4f58-b594-d7c480da4e8b/resourceGroups/io-p-itn-common-rg-01/providers/Microsoft.ServiceBus/namespaces/io-p-itn-platform-sbns-01"
          + name                = "io-p-itn-platform-sbns-01"
          + resource_group_name = "io-p-itn-common-rg-01"
        }
    }

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

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant