Skip to content

Update dependency hashicorp/terraform to v1.14.8#275

Open
renovate[bot] wants to merge 1 commit intomasterfrom
renovate/terraform-monorepo
Open

Update dependency hashicorp/terraform to v1.14.8#275
renovate[bot] wants to merge 1 commit intomasterfrom
renovate/terraform-monorepo

Conversation

@renovate
Copy link
Copy Markdown
Contributor

@renovate renovate bot commented Aug 28, 2024

This PR contains the following updates:

Package Update Change
hashicorp/terraform minor 1.10.41.14.8

Release Notes

hashicorp/terraform (hashicorp/terraform)

v1.14.8

Compare Source

1.14.8 (March 25, 2026)

BUG FIXES:

  • Prevent crash in the display of relevant attributes after provider upgrades (#​38264)

v1.14.7

Compare Source

1.14.7 (March 11, 2026)

NOTES:

  • Bump Go version to 1.25.8 to suppress security scanner false positives (#​38249)

v1.14.6

Compare Source

1.14.6 (February 25, 2026)

BUG FIXES:

  • terraform test: return error when provider config is invalid (#​38084)

v1.14.5

Compare Source

1.14.5 (February 11, 2026)

BUG FIXES:

  • Fixed an issue where terraform stacks validate was failing to resolve relative paths for modules (#​38025)

v1.14.4

Compare Source

1.14.4 (January 28, 2026)

BUG FIXES:

  • backend: Fix nil pointer dereference crash during terraform init when the destination backend returns an error (#​38027)

  • Fixes an issue where any warning diagnostics generated during terraform query execution failed to render in the cloud backend session (#​38040)

  • actions in modules without instances failed the plan graph (#​38089)

v1.14.3

Compare Source

1.14.3 (December 17, 2025)

BUG FIXES:

  • stacks: change absolute paths in path.module/path.root to be relative, as documented (#​37982)

v1.14.2

Compare Source

v1.14.1

Compare Source

1.14.1 (December 3, 2025)

BUG FIXES:

  • test: allow ephemeral outputs in root modules (#​37813)

  • Combinations of replace_triggered_by and -replace could result in some instances not being replaced (#​37833)

  • providers lock: include providers required by terraform test (#​37851)

  • Set state information in the proto request for the GenerateResourceConfig RPC (#​37896)

  • actions: make after_create & after_update actions run after the resource has applied (#​37936)

v1.14.0

Compare Source

1.14.0 (November 19, 2025)

NEW FEATURES:

  • List Resources: List resources can be defined in *.tfquery.hcl files and allow querying and filterting existing infrastructure.

  • A new Terraform command terraform query: Executes list operations against existing infrastructure and displays the results. The command can optionally generate configuration for importing results into Terraform.

  • A new GenerateResourceConfiguration RPC allows providers to create more precise configuration values during import. (#​37515)

  • New top-level Actions block: Actions are provider defined and meant to codify use cases outside the normal CRUD model in your Terraform configuration. Providers can define Actions like aws_lambda_invoke or aws_cloudfront_create_invalidation that do something imparative outside of Terraforms normal CRUD model. You can configure such a side-effect with an action block and have actions triggered through the lifecycle of a resource or through passing the -invoke CLI flag. (#​37553)

ENHANCEMENTS:

  • terraform test: expected diagnostics will be included in test output when running in verbose mode" (#​37362)

  • terraform test: ignore prevent_destroy attribute during when cleaning up tests" (#​37364)

  • terraform stacks command support for -help flag (#​37645)

  • query: support offline validation of query files via -query flag in the validate command (#​37671)

  • Updates to support the AWS European Sovereign Cloud (#​37721)

BUG FIXES:

  • Retrieve all workspace variables while doing a terraform import, include variables inherited from variable sets but not overwritten by the workspace. (#​37241)

  • Fix OSS backend proxy support by adding a proxy layer for OSS backend operations. Resolves #​36897. (#​36897)

  • console and test: return explicit diagnostics when referencing resources that were not included in the most recent operation. (#​37663)

  • query: generate unique resource identifiers for results of expanded list resources (#​37681)

  • The CLI now summarizes the number of actions invoked during terraform apply, matching the plan output. (#​37689)

  • Allow filesystem functions to return inconsistent results when evaluated within provider configuration (#​37854)

  • query: improve error handling for missing identity schemas (#​37863)

UPGRADE NOTES:

  • The parallelism of Terraform operations within container runtimes may be reduced depending on the CPU bandwidth limit setting. (#​37436)

  • Building Terraform 1.14 requires macOS Monterey or later (due to being built on Go 1.25 which imposes these requirements) (#​37436)

Previous Releases

For information on prior major and minor releases, refer to their changelogs:

v1.13.5

Compare Source

1.13.5 (November 5, 2025)

BUG FIXES:

  • impure functions could cause templatefile to incorrectly fail consistency checks (#​37807)

  • Allow filesystem functions to return inconsistent results when evaluated within provider configuration (#​37854)

v1.13.4

Compare Source

1.13.4 (October 15, 2025)

BUG FIXES:

  • Fix crash when showing a cloud plan without having a cloud backend (#​37751)

v1.13.3

Compare Source

1.13.3 (September 17, 2025)

BUG FIXES:

  • variable validation: keep sensitive and ephemeral metadata when evaluating variable conditions. (#​37595)

v1.13.2

Compare Source

1.13.2 (September 10, 2025)

BUG FIXES:

  • test: Fix the order of execution of cleanup nodes (#​37546)

  • apply: hide sensitive inputs when values have changed between plan and apply (#​37582)

v1.13.1

Compare Source

1.13.1 (August 27, 2025)

BUG FIXES:

  • Fix regression that caused terraform test with zero tests to return a non-zero exit code. (#​37477)

  • terraform test: prevent panic when resolving incomplete references (#​37484)

v1.13.0

Compare Source

1.13.0 (August 20, 2025)

NEW FEATURES:

  • The new command terraform stacks exposes some stack operations through the cli. Use terraform stacks -usage to see available commands. (#​36931)

ENHANCEMENTS:

  • Filesystem functions are now checked for consistent results to catch invalid data during apply (#​37001)

  • Allow successful init when provider constraint matches at least one valid version (#​37137)

  • Performance fix for evaluating high cardinality resources (#​37154)

  • TF Test: Allow parallel execution of teardown operations (#​37169)

  • terraform test: Test authors can now specify definitions for external variables that are referenced within test files directly within the test file itself. (#​37195)

  • terraform test: File-level variable blocks can now reference run outputs and other variables." (#​37205)

  • skip redundant comparisons when comparing planned set changes (#​37280)

  • type checking: improve error message on type mismatches. (#​37298)

BUG FIXES:

  • Added a missing warning diagnostic that alerts users when child module contains an ignored cloud block. (#​37180)

  • Nested module outputs could lose sensitivity, even when marked as such in the configuration (#​37212)

  • workspace: Updated validation to reject workspaces named "" (#​37267)

  • workspace: Updated the workspace delete command to reject "" as an invalid workspace name (#​37275)

  • plan: truncate invalid or dynamic references in the relevant attributes (#​37290)

  • Test run Parallelism of 1 should not result in deadlock (#​37292)

  • static validation: detect invalid static references via indexes on objects. (#​37298)

  • Fixes resource identity being dropped from state in certain cases (#​37396)

NOTES:

  • The command terraform rpcapi is now generally available. It is not intended for public consumption, but exposes certain Terraform operations through an RPC interface compatible with go-plugin. (#​37067)

UPGRADE NOTES:

  • terraform test: External variables referenced within test files should now be accompanied by a variable definition block within the test file. This is optional, but users with complex external variables may see error diagnostics without the additional variable definition. (#​37195)
Previous Releases

For information on prior major and minor releases, refer to their changelogs:

v1.12.2

Compare Source

1.12.2 (June 11, 2025)

BUG FIXES:

  • partial ephemeral values were rejected in ephemeral outputs (#​37210)

v1.12.1

Compare Source

1.12.1 (May 21, 2025)

BUG FIXES:

  • Include resource identity in import apply UI output (#​37044)

  • Fix regression during provider installation by reverting back to not sending HEAD requests. (#​36998)

  • Avoid crash on test failure in comparison in function call (#​37071)

v1.12.0

Compare Source

1.12.0 (May 14, 2025)

NEW FEATURES:

  • Added Terraform backend implementation for OCI Object Storage (#​34465)

ENHANCEMENTS:

  • Terraform Test command now accepts a -parallelism=n option, which sets the number of parallel operations in a test run's plan/apply operation. (#​34237)

  • Logical binary operators can now short-circuit (#​36224)

  • Terraform Test: Runs can now be annotated for possible parallel execution. (#​34180)

  • Allow terraform init when tests are present but no configuration files are directly inside the current directory (#​35040)

  • Terraform Test: Continue subsequent test execution when an expected failure is not encountered. (#​34969)

  • Produce detailed diagnostic objects when test run assertions fail (#​34428)

  • backend/oss: Supports more standard environment variables to keep same with provider setting (#​36581)

  • Improved elapsed time display in UI Hook to show minutes and seconds in mm:ss format. (#​36368)

  • Update legacy term used in error messages. (Terraform Cloud agent => HCP Terraform Agent) (#​36706)

  • import blocks: Now support importing a resource via a new identity attribute. This is mutually exclusive with the id attribute (#​36703)

BUG FIXES:

  • Refreshed state was not used in the plan for orphaned resource instances (#​36394)

  • Fixes malformed Terraform version error when the remote backend reads a remote workspace that specifies a Terraform version constraint. (#​36356)

  • Changes to the order of sensitive attributes in the state format would erroneously indicate a plan contained changes when there were none. (#​36465)

  • Avoid reporting duplicate attribute-associated diagnostics, such as "Available Write-only Attribute Alternative" (#​36579)

  • for_each expressions in import blocks should not be able to reference the import target (#​36801)

UPGRADE NOTES:

  • On Linux, Terraform now requires Linux kernel version 3.2 or later; support for previous versions has been discontinued. (#​36478)
Previous Releases

For information on prior major and minor releases, refer to their changelogs:

v1.11.4

Compare Source

1.11.4 (April 9, 2025)

BUG FIXES:

  • disable X25519Kyber768Draft00 in TLS to prevent timouts with some AWS network firewalls (#​36791)

  • write-only attributes: internal providers should set write-only attributes to null (#​36824)

v1.11.3

Compare Source

1.11.3 (March 26, 2025)

BUG FIXES:

  • Fixes unintended exit of CLI when using the remote backend and applying with post-plan tasks configured in HCP Terraform (#​36686)

  • Modules with zero instances that contain ephemeral resources could produce an error during apply (#​36719)

v1.11.2

Compare Source

1.11.2 (March 12, 2025)

ENHANCEMENTS:

  • Azure Backend supports ADO Pipelines OIDC token refresh by using the oidc_request_url, oidc_request_token and (the new) ado_pipeline_service_connection_id. (#​36458)

BUG FIXES:

  • Return error when the templatestring function contains only a single interpolation that evaluates to a null value (#​36652)

  • Backend/azure: subscription_id be optional & skip unnecessary management plane API call in some setup (#​36595)

NOTES:

  • Updated dependency github.com/hashicorp/aws-sdk-go-base/v2 to v2.0.0-beta.62 to support newly added AWS regions (#​36625)

v1.11.1

Compare Source

1.11.1 (March 5, 2025)

BUG FIXES:

  • Temporarily revert updated Windows symlink handling until we can account for known existing configurations using non-symlink junctions. (#​36575)

  • terraform test: Fix crash when a run block attempts to cleanup after a non-applyable plan. (#​36582)

  • Updated dependency golang.org/x/oauth2 from v0.23.0 => v0.27.0 to integrate latest changes (fix for CVE-2025-22868) (#​36584)

  • lang/funcs/transpose: Avoid crash due to map with null values (#​36611)

  • Combining ephemeral and sensitive marks could fail when serializing planned changes (#​36619)

v1.11.0

Compare Source

1.11.0 (February 27, 2025)

NEW FEATURES:

  • Add write-only attributes to resources. Providers can specify that certain attributes are write-only. They are not persisted in state. You can use ephemeral values in write-only attributes. (#​36031)

  • terraform test: The -junit-xml option for the terraform test command is now generally available. This option allows the command to create a test report in JUnit XML format. Feedback during the experimental phase helped map terraform test concepts to the JUnit XML format, and new additons may happen in future releases. (#​36324)

  • S3 native state locking is now generally available. The use_lockfile argument enables users to adopt the S3-native mechanism for state locking. As part of this change, we've deprecated the DynamoDB-related arguments in favor of this new locking mechanism. While you can still use DynamoDB alongside S3-native state locking for migration purposes, we encourage migrating to the new state locking mechanism. (#​36338)

ENHANCEMENTS:

  • init: Provider installation will utilise credentials configured in a .netrc file for the download and shasum URLs returned by provider registries. (#​35843)

  • terraform test: Test runs now support using mocked or overridden values during unit test runs (e.g., with command = "plan"). Set override_during = plan in the test configuration to use the overridden values during the plan phase. The default value is override_during = apply. (#​36227)

  • terraform test: Add new state_key attribute for run blocks, allowing test authors control over which internal state file should be used for the current test run. (#​36185)

  • Updates the azure backend authentication to match the terraform-provider-azurermprovider authentication, in several ways:

    • github.com/hashicorp/go-azure-helpers: v0.43.0 -> v0.71.0
    • github.com/hashicorp/go-azure-sdk/[resource-manager/sdk]: v0.20241212.1154051. This replaces the deprecated Azure SDK used before
    • github.com/jackofallops/giovanni: v0.15.1 -> v0.27.0. Meanwhile, updating the azure storage API version from 2018-11-09 to 2023-11-03
    • Following new properties are added for the azure backend configuration:
      • use_cli
      • use_aks_workload_identity
      • client_id_file_path
      • client_certificate
      • client_id_file_path
      • client_secret_file_path
        (#​36258)
  • Include ca-certificates package in our official Docker image to help with certificate handling by downstream (#​36486)

BUG FIXES:

  • ephemeral values: correct error message when ephemeral values are included in provisioner output (#​36427)

  • Attempting to override a variable during apply via TF_VAR_ environment variable will now yield warning instead of misleading error. (#​36435)

  • backends: Fix crash when interrupting during interactive prompt for values (#​36448)

  • Fixes hanging behavior seen when applying a saved plan with -auto-approve using the cloud backend (#​36453)

Previous Releases

For information on prior major and minor releases, refer to their changelogs:

v1.10.5

Compare Source

1.10.5 (January 22, 2025)

BUG FIXES:

  • element(...): no longer crashes when asked for a negative index into a tuple. (#​36376)

  • Updated dependency github.com/hashicorp/go-slug v0.16.0 => v0.16.3 to integrate latest changes (fix for CVE-2025-0377) (#​36273)

  • jsondecode(...): improved error message when objects contain duplicate keys (#​36376)


Configuration

📅 Schedule: Branch creation - "after 7am and before 11am every weekday" in timezone Europe/London, Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@hmcts-jenkins-cnp
Copy link
Copy Markdown
Contributor

hmcts-jenkins-cnp bot commented Aug 28, 2024

Plan Result (stg)

⚠️ Resource Deletion will happen

This plan contains resource delete operation. Please check the plan result very carefully!

Plan: 38 to add, 8 to change, 7 to destroy.
  • Create
    • azurerm_monitor_diagnostic_setting.migration-diagnostic[0]
    • module.postgresql_flexible[0].azurerm_postgresql_flexible_server.pgsql_server
    • module.postgresql_flexible[0].azurerm_postgresql_flexible_server_active_directory_administrator.pgsql_adadmin
    • module.postgresql_flexible[0].azurerm_postgresql_flexible_server_active_directory_administrator.pgsql_principal_admin[0]
    • module.postgresql_flexible[0].azurerm_postgresql_flexible_server_configuration.pgsql_server_config["azure.enable_temp_tablespaces_on_local_ssd"]
    • module.postgresql_flexible[0].azurerm_postgresql_flexible_server_configuration.pgsql_server_config["azure.extensions"]
    • module.postgresql_flexible[0].azurerm_postgresql_flexible_server_configuration.pgsql_server_config["backslash_quote"]
    • module.postgresql_flexible[0].azurerm_postgresql_flexible_server_configuration.pgsql_server_config["checkpoint_timeout"]
    • module.postgresql_flexible[0].azurerm_postgresql_flexible_server_configuration.pgsql_server_config["effective_io_concurrency"]
    • module.postgresql_flexible[0].azurerm_postgresql_flexible_server_configuration.pgsql_server_config["logfiles.download_enable"]
    • module.postgresql_flexible[0].azurerm_postgresql_flexible_server_configuration.pgsql_server_config["logfiles.retention_days"]
    • module.postgresql_flexible[0].azurerm_postgresql_flexible_server_configuration.pgsql_server_config["maintenance_work_mem"]
    • module.postgresql_flexible[0].azurerm_postgresql_flexible_server_configuration.pgsql_server_config["max_parallel_maintenance_workers"]
    • module.postgresql_flexible[0].azurerm_postgresql_flexible_server_configuration.pgsql_server_config["max_parallel_workers"]
    • module.postgresql_flexible[0].azurerm_postgresql_flexible_server_configuration.pgsql_server_config["max_parallel_workers_per_gather"]
    • module.postgresql_flexible[0].azurerm_postgresql_flexible_server_configuration.pgsql_server_config["max_wal_size"]
    • module.postgresql_flexible[0].azurerm_postgresql_flexible_server_configuration.pgsql_server_config["max_worker_processes"]
    • module.postgresql_flexible[0].azurerm_postgresql_flexible_server_configuration.pgsql_server_config["metrics.collector_database_activity"]
    • module.postgresql_flexible[0].azurerm_postgresql_flexible_server_configuration.pgsql_server_config["min_wal_size"]
    • module.postgresql_flexible[0].azurerm_postgresql_flexible_server_configuration.pgsql_server_config["pg_qs.query_capture_mode"]
    • module.postgresql_flexible[0].azurerm_postgresql_flexible_server_configuration.pgsql_server_config["pgms_wait_sampling.query_capture_mode"]
    • module.postgresql_flexible[0].azurerm_postgresql_flexible_server_configuration.pgsql_server_config["random_page_cost"]
    • module.postgresql_flexible[0].azurerm_postgresql_flexible_server_configuration.pgsql_server_config["shared_buffers"]
    • module.postgresql_flexible[0].azurerm_postgresql_flexible_server_configuration.pgsql_server_config["track_io_timing"]
    • module.postgresql_flexible[0].azurerm_postgresql_flexible_server_configuration.pgsql_server_config["work_mem"]
    • module.postgresql_flexible[0].azurerm_postgresql_flexible_server_database.pg_databases["psql-stg-darts-replica"]
    • module.postgresql_flexible[0].azurerm_postgresql_flexible_server_database.pg_databases["psql-stg-dartsmig-01"]
    • module.postgresql_flexible[0].azurerm_postgresql_flexible_server_database.pg_databases["psql-stg-detsmig-01"]
    • module.sa.time_rotating.rotate
    • module.sa-dets-standard[0].time_rotating.rotate
    • module.sa-migration-standard[0].time_rotating.rotate
  • Update
    • azurerm_key_vault_secret.POSTGRES_HOST[0]
    • azurerm_linux_virtual_machine.migration[0]
    • azurerm_windows_virtual_machine.modernisation_windows["stgdartsmidmock"]
    • module.application_insights.azurerm_application_insights.this
    • module.sa.azurerm_storage_account.storage_account
    • module.sa.azurerm_storage_container.container["darts-inbound-container"]
    • module.sa-dets-standard[0].azurerm_storage_account.storage_account
    • module.sa-migration-standard[0].azurerm_storage_account.storage_account
  • Replace
    • module.application_insights.azurerm_monitor_activity_log_alert.main[0]
    • module.postgresql_flexible[0].null_resource.set-user-permissions-additionaldbs["psql-stg-darts-replica"]
    • module.postgresql_flexible[0].null_resource.set-user-permissions-additionaldbs["psql-stg-dartsmig-01"]
    • module.postgresql_flexible[0].null_resource.set-user-permissions-additionaldbs["psql-stg-detsmig-01"]
    • module.sa.time_static.pim_expiry
    • module.sa-dets-standard[0].time_static.pim_expiry
    • module.sa-migration-standard[0].time_static.pim_expiry
Change Result (Click me)
  # azurerm_key_vault_secret.POSTGRES_HOST[0] will be updated in-place
  ~ resource "azurerm_key_vault_secret" "POSTGRES_HOST" {
        id                      = "https://darts-migration-stg.vault.azure.net/secrets/POSTGRES-HOST/55074b2fb123472a9437a07392f0f43a"
        name                    = "POSTGRES-HOST"
        tags                    = {}
      ~ value                   = (sensitive value)
        # (8 unchanged attributes hidden)
    }

  # azurerm_linux_virtual_machine.migration[0] will be updated in-place
  ~ resource "azurerm_linux_virtual_machine" "migration" {
        id                                                     = "/subscriptions/74dacd4f-a248-45bb-a2f0-af700dc4cf68/resourceGroups/darts-migration-stg-rg/providers/Microsoft.Compute/virtualMachines/migration-vm"
        name                                                   = "migration-vm"
      ~ patch_assessment_mode                                  = "AutomaticByPlatform" -> "ImageDefault"
        tags                                                   = {
            "application"         = "darts"
            "autoShutdown"        = "true"
            "builtFrom"           = "https://github.com/HMCTS/darts-shared-infrastructure.git"
            "businessArea"        = "Cross-Cutting"
            "contactSlackChannel" = "#darts-devs"
            "environment"         = "staging"
            "managedBy"           = "Darts Modernisation"
        }
        # (39 unchanged attributes hidden)

        # (3 unchanged blocks hidden)
    }

  # azurerm_monitor_diagnostic_setting.migration-diagnostic[0] will be created
  + resource "azurerm_monitor_diagnostic_setting" "migration-diagnostic" {
      + id                             = (known after apply)
      + log_analytics_destination_type = (known after apply)
      + log_analytics_workspace_id     = "/subscriptions/1c4f0704-a29e-403d-b719-b90c34ef14c9/resourceGroups/oms-automation/providers/Microsoft.OperationalInsights/workspaces/hmcts-nonprod"
      + name                           = "migration-postgres-diagnostics"
      + target_resource_id             = (known after apply)

      + enabled_log {
          + category       = "PostgreSQLFlexDatabaseXacts"
            # (1 unchanged attribute hidden)
        }
      + enabled_log {
          + category       = "PostgreSQLFlexQueryStoreRuntime"
            # (1 unchanged attribute hidden)
        }
      + enabled_log {
          + category       = "PostgreSQLFlexQueryStoreWaitStats"
            # (1 unchanged attribute hidden)
        }
      + enabled_log {
          + category       = "PostgreSQLFlexSessions"
            # (1 unchanged attribute hidden)
        }
      + enabled_log {
          + category       = "PostgreSQLFlexTableStats"
            # (1 unchanged attribute hidden)
        }
      + enabled_log {
          + category       = "PostgreSQLLogs"
            # (1 unchanged attribute hidden)
        }

      + metric {
          + category = "AllMetrics"
          + enabled  = true
        }
    }

  # azurerm_windows_virtual_machine.modernisation_windows["stgdartsmidmock"] will be updated in-place
  ~ resource "azurerm_windows_virtual_machine" "modernisation_windows" {
        id                                                     = "/subscriptions/74dacd4f-a248-45bb-a2f0-af700dc4cf68/resourceGroups/darts-stg-rg/providers/Microsoft.Compute/virtualMachines/stgdartsmidmock"
        name                                                   = "stgdartsmidmock"
      ~ patch_assessment_mode                                  = "AutomaticByPlatform" -> "ImageDefault"
        tags                                                   = {
            "application"         = "darts"
            "autoShutdown"        = "true"
            "builtFrom"           = "https://github.com/HMCTS/darts-shared-infrastructure.git"
            "businessArea"        = "Cross-Cutting"
            "contactSlackChannel" = "#darts-devs"
            "environment"         = "staging"
            "managedBy"           = "Darts Modernisation"
        }
        # (41 unchanged attributes hidden)

        # (3 unchanged blocks hidden)
    }

  # module.application_insights.azurerm_application_insights.this will be updated in-place
  ~ resource "azurerm_application_insights" "this" {
        id                                    = "/subscriptions/74dacd4f-a248-45bb-a2f0-af700dc4cf68/resourceGroups/darts-stg-rg/providers/Microsoft.Insights/components/darts-stg"
        name                                  = "darts-stg"
      ~ sampling_percentage                   = 100 -> 1
        tags                                  = {
            "application"         = "darts"
            "autoShutdown"        = "true"
            "builtFrom"           = "https://github.com/HMCTS/darts-shared-infrastructure.git"
            "businessArea"        = "Cross-Cutting"
            "contactSlackChannel" = "#darts-devs"
            "environment"         = "staging"
            "managedBy"           = "Darts Modernisation"
        }
        # (15 unchanged attributes hidden)
    }

  # module.application_insights.azurerm_monitor_activity_log_alert.main[0] must be replaced
-/+ resource "azurerm_monitor_activity_log_alert" "main" {
      ~ id                  = "/subscriptions/74dacd4f-a248-45bb-a2f0-af700dc4cf68/resourceGroups/darts-stg-rg/providers/Microsoft.Insights/activityLogAlerts/Application Insights daily cap reached - darts-stg" -> (known after apply)
      ~ name                = "Application Insights daily cap reached - darts-stg" -> "Application-Insights-daily-cap-reached-darts-stg" # forces replacement
        tags                = {
            "application"         = "darts"
            "autoShutdown"        = "true"
            "builtFrom"           = "https://github.com/HMCTS/darts-shared-infrastructure.git"
            "businessArea"        = "Cross-Cutting"
            "contactSlackChannel" = "#darts-devs"
            "environment"         = "staging"
            "managedBy"           = "Darts Modernisation"
        }
        # (5 unchanged attributes hidden)

      ~ criteria {
          - levels                  = [] -> null
          - resource_groups         = [] -> null
          - resource_ids            = [] -> null
          - resource_providers      = [] -> null
          - resource_types          = [] -> null
          - statuses                = [] -> null
          - sub_statuses            = [] -> null
            # (13 unchanged attributes hidden)

          ~ resource_health (known after apply)

          ~ service_health (known after apply)
        }

        # (1 unchanged block hidden)
    }

  # module.postgresql_flexible[0].azurerm_postgresql_flexible_server.pgsql_server will be created
  + resource "azurerm_postgresql_flexible_server" "pgsql_server" {
      + administrator_login           = "pgadmin"
      + administrator_password        = (sensitive value)
      + administrator_password_wo     = (write-only attribute)
      + auto_grow_enabled             = true
      + backup_retention_days         = 35
      + create_mode                   = "Default"
      + delegated_subnet_id           = "/subscriptions/74dacd4f-a248-45bb-a2f0-af700dc4cf68/resourceGroups/darts-migration-stg-rg/providers/Microsoft.Network/virtualNetworks/migration-vnet/subnets/postgres-sn"
      + fqdn                          = (known after apply)
      + geo_redundant_backup_enabled  = false
      + id                            = (known after apply)
      + location                      = "uksouth"
      + name                          = "darts-migration-stg"
      + private_dns_zone_id           = "/subscriptions/1baf5470-1c3e-40d3-a6f7-74bfbce4b348/resourceGroups/core-infra-intsvc-rg/providers/Microsoft.Network/privateDnsZones/private.postgres.database.azure.com"
      + public_network_access_enabled = false
      + resource_group_name           = "darts-migration-stg-rg"
      + sku_name                      = "GP_Standard_D32ds_v5"
      + storage_mb                    = 8388608
      + storage_tier                  = (known after apply)
      + tags                          = {
          + "application"         = "darts"
          + "autoShutdown"        = "true"
          + "builtFrom"           = "https://github.com/HMCTS/darts-shared-infrastructure.git"
          + "businessArea"        = "Cross-Cutting"
          + "contactSlackChannel" = "#darts-devs"
          + "environment"         = "staging"
          + "managedBy"           = "Darts Modernisation"
        }
      + version                       = "16"

      + authentication {
          + active_directory_auth_enabled = true
          + password_auth_enabled         = true
          + tenant_id                     = "531ff96d-0ae9-462a-8d2d-bec7c0b42082"
        }

      + high_availability {
          + mode = "ZoneRedundant"
        }

      + maintenance_window {
          + day_of_week  = 0
          + start_hour   = 3
          + start_minute = 0
        }
    }

  # module.postgresql_flexible[0].azurerm_postgresql_flexible_server_active_directory_administrator.pgsql_adadmin will be created
  + resource "azurerm_postgresql_flexible_server_active_directory_administrator" "pgsql_adadmin" {
      + id                  = (known after apply)
      + object_id           = "3c52c98b-07a3-4a97-92b9-298e86bb1ca9"
      + principal_name      = "DTS Platform Operations PostgreSQL Admin Access"
      + principal_type      = "Group"
      + resource_group_name = "darts-migration-stg-rg"
      + server_name         = "darts-migration-stg"
      + tenant_id           = "531ff96d-0ae9-462a-8d2d-bec7c0b42082"
    }

  # module.postgresql_flexible[0].azurerm_postgresql_flexible_server_active_directory_administrator.pgsql_principal_admin[0] will be created
  + resource "azurerm_postgresql_flexible_server_active_directory_administrator" "pgsql_principal_admin" {
      + id                  = (known after apply)
      + object_id           = "7ef3b6ce-3974-41ab-8512-c3ef4bb8ae01"
      + principal_name      = "jenkins-ptl-mi"
      + principal_type      = "ServicePrincipal"
      + resource_group_name = "darts-migration-stg-rg"
      + server_name         = "darts-migration-stg"
      + tenant_id           = "531ff96d-0ae9-462a-8d2d-bec7c0b42082"
    }

  # module.postgresql_flexible[0].azurerm_postgresql_flexible_server_configuration.pgsql_server_config["azure.enable_temp_tablespaces_on_local_ssd"] will be created
  + resource "azurerm_postgresql_flexible_server_configuration" "pgsql_server_config" {
      + id        = (known after apply)
      + name      = "azure.enable_temp_tablespaces_on_local_ssd"
      + server_id = (known after apply)
      + value     = "off"
    }

  # module.postgresql_flexible[0].azurerm_postgresql_flexible_server_configuration.pgsql_server_config["azure.extensions"] will be created
  + resource "azurerm_postgresql_flexible_server_configuration" "pgsql_server_config" {
      + id        = (known after apply)
      + name      = "azure.extensions"
      + server_id = (known after apply)
      + value     = "PG_STAT_STATEMENTS,PG_TRGM"
    }

  # module.postgresql_flexible[0].azurerm_postgresql_flexible_server_configuration.pgsql_server_config["backslash_quote"] will be created
  + resource "azurerm_postgresql_flexible_server_configuration" "pgsql_server_config" {
      + id        = (known after apply)
      + name      = "backslash_quote"
      + server_id = (known after apply)
      + value     = "on"
    }

  # module.postgresql_flexible[0].azurerm_postgresql_flexible_server_configuration.pgsql_server_config["checkpoint_timeout"] will be created
  + resource "azurerm_postgresql_flexible_server_configuration" "pgsql_server_config" {
      + id        = (known after apply)
      + name      = "checkpoint_timeout"
      + server_id = (known after apply)
      + value     = "1800"
    }

  # module.postgresql_flexible[0].azurerm_postgresql_flexible_server_configuration.pgsql_server_config["effective_io_concurrency"] will be created
  + resource "azurerm_postgresql_flexible_server_configuration" "pgsql_server_config" {
      + id        = (known after apply)
      + name      = "effective_io_concurrency"
      + server_id = (known after apply)
      + value     = "200"
    }

  # module.postgresql_flexible[0].azurerm_postgresql_flexible_server_configuration.pgsql_server_config["logfiles.download_enable"] will be created
  + resource "azurerm_postgresql_flexible_server_configuration" "pgsql_server_config" {
      + id        = (known after apply)
      + name      = "logfiles.download_enable"
      + server_id = (known after apply)
      + value     = "ON"
    }

  # module.postgresql_flexible[0].azurerm_postgresql_flexible_server_configuration.pgsql_server_config["logfiles.retention_days"] will be created
  + resource "azurerm_postgresql_flexible_server_configuration" "pgsql_server_config" {
      + id        = (known after apply)
      + name      = "logfiles.retention_days"
      + server_id = (known after apply)
      + value     = "7"
    }

  # module.postgresql_flexible[0].azurerm_postgresql_flexible_server_configuration.pgsql_server_config["maintenance_work_mem"] will be created
  + resource "azurerm_postgresql_flexible_server_configuration" "pgsql_server_config" {
      + id        = (known after apply)
      + name      = "maintenance_work_mem"
      + server_id = (known after apply)
      + value     = "2097151"
    }

  # module.postgresql_flexible[0].azurerm_postgresql_flexible_server_configuration.pgsql_server_config["max_parallel_maintenance_workers"] will be created
  + resource "azurerm_postgresql_flexible_server_configuration" "pgsql_server_config" {
      + id        = (known after apply)
      + name      = "max_parallel_maintenance_workers"
      + server_id = (known after apply)
      + value     = "4"
    }

  # module.postgresql_flexible[0].azurerm_postgresql_flexible_server_configuration.pgsql_server_config["max_parallel_workers"] will be created
  + resource "azurerm_postgresql_flexible_server_configuration" "pgsql_server_config" {
      + id        = (known after apply)
      + name      = "max_parallel_workers"
      + server_id = (known after apply)
      + value     = "32"
    }

  # module.postgresql_flexible[0].azurerm_postgresql_flexible_server_configuration.pgsql_server_config["max_parallel_workers_per_gather"] will be created
  + resource "azurerm_postgresql_flexible_server_configuration" "pgsql_server_config" {
      + id        = (known after apply)
      + name      = "max_parallel_workers_per_gather"
      + server_id = (known after apply)
      + value     = "4"
    }

  # module.postgresql_flexible[0].azurerm_postgresql_flexible_server_configuration.pgsql_server_config["max_wal_size"] will be created
  + resource "azurerm_postgresql_flexible_server_configuration" "pgsql_server_config" {
      + id        = (known after apply)
      + name      = "max_wal_size"
      + server_id = (known after apply)
      + value     = "4096"
    }

  # module.postgresql_flexible[0].azurerm_postgresql_flexible_server_configuration.pgsql_server_config["max_worker_processes"] will be created
  + resource "azurerm_postgresql_flexible_server_configuration" "pgsql_server_config" {
      + id        = (known after apply)
      + name      = "max_worker_processes"
      + server_id = (known after apply)
      + value     = "32"
    }

  # module.postgresql_flexible[0].azurerm_postgresql_flexible_server_configuration.pgsql_server_config["metrics.collector_database_activity"] will be created
  + resource "azurerm_postgresql_flexible_server_configuration" "pgsql_server_config" {
      + id        = (known after apply)
      + name      = "metrics.collector_database_activity"
      + server_id = (known after apply)
      + value     = "ON"
    }

  # module.postgresql_flexible[0].azurerm_postgresql_flexible_server_configuration.pgsql_server_config["min_wal_size"] will be created
  + resource "azurerm_postgresql_flexible_server_configuration" "pgsql_server_config" {
      + id        = (known after apply)
      + name      = "min_wal_size"
      + server_id = (known after apply)
      + value     = "1024"
    }

  # module.postgresql_flexible[0].azurerm_postgresql_flexible_server_configuration.pgsql_server_config["pg_qs.query_capture_mode"] will be created
  + resource "azurerm_postgresql_flexible_server_configuration" "pgsql_server_config" {
      + id        = (known after apply)
      + name      = "pg_qs.query_capture_mode"
      + server_id = (known after apply)
      + value     = "ALL"
    }

  # module.postgresql_flexible[0].azurerm_postgresql_flexible_server_configuration.pgsql_server_config["pgms_wait_sampling.query_capture_mode"] will be created
  + resource "azurerm_postgresql_flexible_server_configuration" "pgsql_server_config" {
      + id        = (known after apply)
      + name      = "pgms_wait_sampling.query_capture_mode"
      + server_id = (known after apply)
      + value     = "ALL"
    }

  # module.postgresql_flexible[0].azurerm_postgresql_flexible_server_configuration.pgsql_server_config["random_page_cost"] will be created
  + resource "azurerm_postgresql_flexible_server_configuration" "pgsql_server_config" {
      + id        = (known after apply)
      + name      = "random_page_cost"
      + server_id = (known after apply)
      + value     = "1.1"
    }

  # module.postgresql_flexible[0].azurerm_postgresql_flexible_server_configuration.pgsql_server_config["shared_buffers"] will be created
  + resource "azurerm_postgresql_flexible_server_configuration" "pgsql_server_config" {
      + id        = (known after apply)
      + name      = "shared_buffers"
      + server_id = (known after apply)
      + value     = "6835200"
    }

  # module.postgresql_flexible[0].azurerm_postgresql_flexible_server_configuration.pgsql_server_config["track_io_timing"] will be created
  + resource "azurerm_postgresql_flexible_server_configuration" "pgsql_server_config" {
      + id        = (known after apply)
      + name      = "track_io_timing"
      + server_id = (known after apply)
      + value     = "ON"
    }

  # module.postgresql_flexible[0].azurerm_postgresql_flexible_server_configuration.pgsql_server_config["work_mem"] will be created
  + resource "azurerm_postgresql_flexible_server_configuration" "pgsql_server_config" {
      + id        = (known after apply)
      + name      = "work_mem"
      + server_id = (known after apply)
      + value     = "83886"
    }

  # module.postgresql_flexible[0].azurerm_postgresql_flexible_server_database.pg_databases["psql-stg-darts-replica"] will be created
  + resource "azurerm_postgresql_flexible_server_database" "pg_databases" {
      + charset   = "utf8"
      + collation = "en_GB.utf8"
      + id        = (known after apply)
      + name      = "psql-stg-darts-replica"
      + server_id = (known after apply)
    }

  # module.postgresql_flexible[0].azurerm_postgresql_flexible_server_database.pg_databases["psql-stg-dartsmig-01"] will be created
  + resource "azurerm_postgresql_flexible_server_database" "pg_databases" {
      + charset   = "utf8"
      + collation = "en_GB.utf8"
      + id        = (known after apply)
      + name      = "psql-stg-dartsmig-01"
      + server_id = (known after apply)
    }

  # module.postgresql_flexible[0].azurerm_postgresql_flexible_server_database.pg_databases["psql-stg-detsmig-01"] will be created
  + resource "azurerm_postgresql_flexible_server_database" "pg_databases" {
      + charset   = "utf8"
      + collation = "en_GB.utf8"
      + id        = (known after apply)
      + name      = "psql-stg-detsmig-01"
      + server_id = (known after apply)
    }

  # module.postgresql_flexible[0].null_resource.set-user-permissions-additionaldbs["psql-stg-darts-replica"] must be replaced
-/+ resource "null_resource" "set-user-permissions-additionaldbs" {
      ~ id       = "2488335066106243249" -> (known after apply)
      ~ triggers = { # forces replacement
          + "db_reader_schemas" = "public"
          ~ "script_hash"       = "dbe0102f3129d4463913d5e01177e806bc6954005bdd98f20c242658634a1bbc" -> "88abfc1a97fc27a8f4d01362525f3b65e85409d3a475ecc79b11ad09a019e469"
            # (3 unchanged elements hidden)
        }
    }

  # module.postgresql_flexible[0].null_resource.set-user-permissions-additionaldbs["psql-stg-dartsmig-01"] must be replaced
-/+ resource "null_resource" "set-user-permissions-additionaldbs" {
      ~ id       = "4394650145881236016" -> (known after apply)
      ~ triggers = { # forces replacement
          + "db_reader_schemas" = "public"
          ~ "script_hash"       = "dbe0102f3129d4463913d5e01177e806bc6954005bdd98f20c242658634a1bbc" -> "88abfc1a97fc27a8f4d01362525f3b65e85409d3a475ecc79b11ad09a019e469"
            # (3 unchanged elements hidden)
        }
    }

  # module.postgresql_flexible[0].null_resource.set-user-permissions-additionaldbs["psql-stg-detsmig-01"] must be replaced
-/+ resource "null_resource" "set-user-permissions-additionaldbs" {
      ~ id       = "233501147688105496" -> (known after apply)
      ~ triggers = { # forces replacement
          + "db_reader_schemas" = "public"
          ~ "script_hash"       = "dbe0102f3129d4463913d5e01177e806bc6954005bdd98f20c242658634a1bbc" -> "88abfc1a97fc27a8f4d01362525f3b65e85409d3a475ecc79b11ad09a019e469"
            # (3 unchanged elements hidden)
        }
    }

  # module.sa.azurerm_storage_account.storage_account will be updated in-place
  ~ resource "azurerm_storage_account" "storage_account" {
        id                                 = "/subscriptions/74dacd4f-a248-45bb-a2f0-af700dc4cf68/resourceGroups/darts-stg-rg/providers/Microsoft.Storage/storageAccounts/dartssastg"
        name                               = "dartssastg"
      ~ tags                               = {
            "application"         = "darts"
          ~ "autoShutdown"        = "false" -> "true"
            "builtFrom"           = "https://github.com/HMCTS/darts-shared-infrastructure.git"
            "businessArea"        = "Cross-Cutting"
            "contactSlackChannel" = "#darts-devs"
            "environment"         = "staging"
            "managedBy"           = "Darts Modernisation"
        }
        # (96 unchanged attributes hidden)

      + network_rules {
          + bypass         = [
              + "AzureServices",
            ]
          + default_action = "Allow"
        }

        # (3 unchanged blocks hidden)
    }

  # module.sa.azurerm_storage_container.container["darts-inbound-container"] will be updated in-place
  ~ resource "azurerm_storage_container" "container" {
      ~ container_access_type             = "container" -> "private"
        id                                = "https://dartssastg.blob.core.windows.net/darts-inbound-container"
        name                              = "darts-inbound-container"
        # (7 unchanged attributes hidden)
    }

  # module.sa.time_rotating.rotate will be created
  + resource "time_rotating" "rotate" {
      + day              = (known after apply)
      + hour             = (known after apply)
      + id               = (known after apply)
      + minute           = (known after apply)
      + month            = (known after apply)
      + rfc3339          = (known after apply)
      + rotation_days    = 360
      + rotation_rfc3339 = (known after apply)
      + second           = (known after apply)
      + unix             = (known after apply)
      + year             = (known after apply)
    }

  # module.sa.time_static.pim_expiry must be replaced
-/+ resource "time_static" "pim_expiry" {
      ~ day     = 7 -> (known after apply)
      ~ hour    = 10 -> (known after apply)
      ~ id      = "2025-11-07T10:47:15Z" -> (known after apply)
      ~ minute  = 47 -> (known after apply)
      ~ month   = 11 -> (known after apply)
      ~ rfc3339 = "2025-11-07T10:47:15Z" -> (known after apply) # forces replacement
      ~ second  = 15 -> (known after apply)
      ~ unix    = 1762512435 -> (known after apply)
      ~ year    = 2025 -> (known after apply)
    }

  # module.sa-dets-standard[0].azurerm_storage_account.storage_account will be updated in-place
  ~ resource "azurerm_storage_account" "storage_account" {
        id                                 = "/subscriptions/74dacd4f-a248-45bb-a2f0-af700dc4cf68/resourceGroups/darts-stg-rg/providers/Microsoft.Storage/storageAccounts/stgdetsdarts"
        name                               = "stgdetsdarts"
        tags                               = {
            "application"         = "darts"
            "autoShutdown"        = "true"
            "builtFrom"           = "https://github.com/HMCTS/darts-shared-infrastructure.git"
            "businessArea"        = "Cross-Cutting"
            "contactSlackChannel" = "#darts-devs"
            "environment"         = "staging"
            "managedBy"           = "Darts Modernisation"
        }
        # (96 unchanged attributes hidden)

      + network_rules {
          + bypass         = [
              + "AzureServices",
            ]
          + default_action = "Allow"
        }

        # (3 unchanged blocks hidden)
    }

  # module.sa-dets-standard[0].time_rotating.rotate will be created
  + resource "time_rotating" "rotate" {
      + day              = (known after apply)
      + hour             = (known after apply)
      + id               = (known after apply)
      + minute           = (known after apply)
      + month            = (known after apply)
      + rfc3339          = (known after apply)
      + rotation_days    = 360
      + rotation_rfc3339 = (known after apply)
      + second           = (known after apply)
      + unix             = (known after apply)
      + year             = (known after apply)
    }

  # module.sa-dets-standard[0].time_static.pim_expiry must be replaced
-/+ resource "time_static" "pim_expiry" {
      ~ day     = 21 -> (known after apply)
      ~ hour    = 15 -> (known after apply)
      ~ id      = "2025-06-21T15:51:13Z" -> (known after apply)
      ~ minute  = 51 -> (known after apply)
      ~ month   = 6 -> (known after apply)
      ~ rfc3339 = "2025-06-21T15:51:13Z" -> (known after apply) # forces replacement
      ~ second  = 13 -> (known after apply)
      ~ unix    = 1750521073 -> (known after apply)
      ~ year    = 2025 -> (known after apply)
    }

  # module.sa-migration-standard[0].azurerm_storage_account.storage_account will be updated in-place
  ~ resource "azurerm_storage_account" "storage_account" {
        id                                 = "/subscriptions/74dacd4f-a248-45bb-a2f0-af700dc4cf68/resourceGroups/darts-migration-stg-rg/providers/Microsoft.Storage/storageAccounts/sastgdartsmig02"
        name                               = "sastgdartsmig02"
        tags                               = {
            "application"         = "darts"
            "autoShutdown"        = "true"
            "builtFrom"           = "https://github.com/HMCTS/darts-shared-infrastructure.git"
            "businessArea"        = "Cross-Cutting"
            "contactSlackChannel" = "#darts-devs"
            "environment"         = "staging"
            "managedBy"           = "Darts Modernisation"
        }
        # (96 unchanged attributes hidden)

      + network_rules {
          + bypass         = [
              + "AzureServices",
            ]
          + default_action = "Allow"
        }

        # (3 unchanged blocks hidden)
    }

  # module.sa-migration-standard[0].time_rotating.rotate will be created
  + resource "time_rotating" "rotate" {
      + day              = (known after apply)
      + hour             = (known after apply)
      + id               = (known after apply)
      + minute           = (known after apply)
      + month            = (known after apply)
      + rfc3339          = (known after apply)
      + rotation_days    = 360
      + rotation_rfc3339 = (known after apply)
      + second           = (known after apply)
      + unix             = (known after apply)
      + year             = (known after apply)
    }

  # module.sa-migration-standard[0].time_static.pim_expiry must be replaced
-/+ resource "time_static" "pim_expiry" {
      ~ day     = 12 -> (known after apply)
      ~ hour    = 11 -> (known after apply)
      ~ id      = "2026-01-12T11:09:29Z" -> (known after apply)
      ~ minute  = 9 -> (known after apply)
      ~ month   = 1 -> (known after apply)
      ~ rfc3339 = "2026-01-12T11:09:29Z" -> (known after apply) # forces replacement
      ~ second  = 29 -> (known after apply)
      ~ unix    = 1768216169 -> (known after apply)
      ~ year    = 2026 -> (known after apply)
    }

Plan: 38 to add, 8 to change, 7 to destroy.
ℹ️ Objects have changed outside of Terraform

This feature was introduced from Terraform v0.15.4.

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

  # module.postgresql_flexible[0].azurerm_postgresql_flexible_server.pgsql_server has been deleted
  - resource "azurerm_postgresql_flexible_server" "pgsql_server" {
      - administrator_login               = "pgadmin" -> null
      - administrator_password            = (sensitive value) -> null
      - administrator_password_wo         = (write-only attribute) -> null
      - fqdn                              = "darts-migration-stg.postgres.database.azure.com" -> null
      - id                                = "/subscriptions/74dacd4f-a248-45bb-a2f0-af700dc4cf68/resourceGroups/darts-migration-stg-rg/providers/Microsoft.DBforPostgreSQL/flexibleServers/darts-migration-stg" -> null
      - name                              = "darts-migration-stg" -> null
      - resource_group_name               = "darts-migration-stg-rg" -> null
        tags                              = {
            "application"         = "darts"
            "autoShutdown"        = "true"
            "builtFrom"           = "https://github.com/HMCTS/darts-shared-infrastructure.git"
            "businessArea"        = "Cross-Cutting"
            "contactSlackChannel" = "#darts-devs"
            "environment"         = "staging"
            "managedBy"           = "Darts Modernisation"
        }
        # (15 unchanged attributes hidden)

        # (3 unchanged blocks hidden)
    }

  # module.sa.time_rotating.rotate has been deleted
  - resource "time_rotating" "rotate" {
        id               = "2024-11-12T10:47:15Z"
      - rotation_rfc3339 = "2025-11-07T10:47:15Z" -> null
        # (9 unchanged attributes hidden)
    }

  # module.sa-dets-standard[0].time_rotating.rotate has been deleted
  - resource "time_rotating" "rotate" {
        id               = "2024-06-26T15:51:13Z"
      - rotation_rfc3339 = "2025-06-21T15:51:13Z" -> null
        # (9 unchanged attributes hidden)
    }

  # module.sa-migration-standard[0].time_rotating.rotate has been deleted
  - resource "time_rotating" "rotate" {
        id               = "2025-01-17T11:09:29Z"
      - rotation_rfc3339 = "2026-01-12T11:09:29Z" -> null
        # (9 unchanged attributes hidden)
    }


Unless you have made equivalent changes to your configuration, or ignored the

@hmcts-jenkins-cnp
Copy link
Copy Markdown
Contributor

hmcts-jenkins-cnp bot commented Aug 28, 2024

Plan Result (prod)

⚠️ Resource Deletion will happen

This plan contains resource delete operation. Please check the plan result very carefully!

Plan: 18 to add, 20 to change, 8 to destroy.
  • Create
    • azurerm_managed_disk.mig-01-disk[0]
    • azurerm_managed_disk.migration_os[0]
    • azurerm_role_assignment.storage_owner_quarantine[0]
    • azurerm_role_assignment.storage_owner_standard[0]
    • module.postgresql_flexible[0].azurerm_postgresql_flexible_server_database.pg_databases["psql-prod-darts-replica"]
    • module.postgresql_flexible[0].azurerm_postgresql_flexible_server_database.pg_databases["psql-prod-dartsmig-01"]
    • module.postgresql_flexible[0].azurerm_postgresql_flexible_server_database.pg_databases["psql-prod-detsmig-01"]
    • module.sa.time_rotating.rotate
    • module.sa-migration-quarantine[0].time_rotating.rotate
    • module.sa-migration-standard[0].time_rotating.rotate
  • Update
    • azurerm_linux_virtual_machine.dock-linux["prddartsmigdock"]
    • azurerm_linux_virtual_machine.gitlab-linux["prddartsgitlab"]
    • azurerm_linux_virtual_machine.migration[0]
    • azurerm_linux_virtual_machine.migration-linux["prddartsmigdb01"]
    • azurerm_linux_virtual_machine.migration-linux2["prddartsmigdb02"]
    • azurerm_linux_virtual_machine.oracle["prddartsmigora01"]
    • azurerm_logic_app_standard.logic[0]
    • azurerm_managed_disk.shared_disk[0]
    • azurerm_managed_disk.shared_disk_backup[0]
    • azurerm_windows_virtual_machine.migration_windows["prddartsassess"]
    • azurerm_windows_virtual_machine.migration_windows["prddartsassure"]
    • azurerm_windows_virtual_machine.migration_windows["prddartsmig01"]
    • azurerm_windows_virtual_machine.migration_windows["prddartsmig02"]
    • azurerm_windows_virtual_machine.migration_windows["prddartsmig03"]
    • azurerm_windows_virtual_machine.migration_windows["prddartsmig04"]
    • azurerm_windows_virtual_machine.migration_windows["prddartsmig05"]
    • azurerm_windows_virtual_machine.migration_windows["prddartsoracle"]
    • azurerm_windows_virtual_machine.migration_windows["prddartsunstr"]
    • module.sa.azurerm_storage_account.storage_account
    • module.sa-migration-standard[0].azurerm_storage_account.storage_account
  • Replace
    • module.application_insights.azurerm_monitor_activity_log_alert.main[0]
    • module.postgresql_flexible[0].azurerm_postgresql_flexible_server_active_directory_administrator.pgsql_adadmin
    • module.postgresql_flexible[0].null_resource.set-user-permissions-additionaldbs["psql-prod-darts-replica"]
    • module.postgresql_flexible[0].null_resource.set-user-permissions-additionaldbs["psql-prod-dartsmig-01"]
    • module.postgresql_flexible[0].null_resource.set-user-permissions-additionaldbs["psql-prod-detsmig-01"]
    • module.sa.time_static.pim_expiry
    • module.sa-migration-quarantine[0].time_static.pim_expiry
    • module.sa-migration-standard[0].time_static.pim_expiry
Change Result (Click me)
  # azurerm_linux_virtual_machine.dock-linux["prddartsmigdock"] will be updated in-place
  ~ resource "azurerm_linux_virtual_machine" "dock-linux" {
        id                                                     = "/subscriptions/5ca62022-6aa2-4cee-aaa7-e7536c8d566c/resourceGroups/darts-migration-prod-rg/providers/Microsoft.Compute/virtualMachines/prddartsmigdock"
        name                                                   = "prddartsmigdock"
      ~ patch_assessment_mode                                  = "AutomaticByPlatform" -> "ImageDefault"
        tags                                                   = {
            "application"         = "darts"
            "builtFrom"           = "https://github.com/HMCTS/darts-shared-infrastructure.git"
            "businessArea"        = "Cross-Cutting"
            "contactSlackChannel" = "#darts-devs"
            "environment"         = "production"
            "managedBy"           = "Darts Modernisation"
        }
        # (39 unchanged attributes hidden)

        # (3 unchanged blocks hidden)
    }

  # azurerm_linux_virtual_machine.gitlab-linux["prddartsgitlab"] will be updated in-place
  ~ resource "azurerm_linux_virtual_machine" "gitlab-linux" {
        id                                                     = "/subscriptions/5ca62022-6aa2-4cee-aaa7-e7536c8d566c/resourceGroups/darts-migration-prod-rg/providers/Microsoft.Compute/virtualMachines/prddartsgitlab"
        name                                                   = "prddartsgitlab"
      ~ patch_assessment_mode                                  = "AutomaticByPlatform" -> "ImageDefault"
        tags                                                   = {
            "application"         = "darts"
            "builtFrom"           = "https://github.com/HMCTS/darts-shared-infrastructure.git"
            "businessArea"        = "Cross-Cutting"
            "contactSlackChannel" = "#darts-devs"
            "environment"         = "production"
            "managedBy"           = "Darts Modernisation"
        }
        # (39 unchanged attributes hidden)

        # (3 unchanged blocks hidden)
    }

  # azurerm_linux_virtual_machine.migration[0] will be updated in-place
  ~ resource "azurerm_linux_virtual_machine" "migration" {
        id                                                     = "/subscriptions/5ca62022-6aa2-4cee-aaa7-e7536c8d566c/resourceGroups/darts-migration-prod-rg/providers/Microsoft.Compute/virtualMachines/migration-vm"
        name                                                   = "migration-vm"
      ~ patch_assessment_mode                                  = "AutomaticByPlatform" -> "ImageDefault"
        tags                                                   = {
            "application"         = "darts"
            "builtFrom"           = "https://github.com/HMCTS/darts-shared-infrastructure.git"
            "businessArea"        = "Cross-Cutting"
            "contactSlackChannel" = "#darts-devs"
            "environment"         = "production"
            "managedBy"           = "Darts Modernisation"
        }
        # (39 unchanged attributes hidden)

        # (3 unchanged blocks hidden)
    }

  # azurerm_linux_virtual_machine.migration-linux["prddartsmigdb01"] will be updated in-place
  ~ resource "azurerm_linux_virtual_machine" "migration-linux" {
        id                                                     = "/subscriptions/5ca62022-6aa2-4cee-aaa7-e7536c8d566c/resourceGroups/darts-migration-prod-rg/providers/Microsoft.Compute/virtualMachines/prddartsmigdb01"
        name                                                   = "prddartsmigdb01"
      ~ patch_assessment_mode                                  = "AutomaticByPlatform" -> "ImageDefault"
        tags                                                   = {
            "application"         = "darts"
            "builtFrom"           = "https://github.com/HMCTS/darts-shared-infrastructure.git"
            "businessArea"        = "Cross-Cutting"
            "contactSlackChannel" = "#darts-devs"
            "environment"         = "production"
            "managedBy"           = "Darts Modernisation"
        }
        # (39 unchanged attributes hidden)

        # (3 unchanged blocks hidden)
    }

  # azurerm_linux_virtual_machine.migration-linux2["prddartsmigdb02"] will be updated in-place
  ~ resource "azurerm_linux_virtual_machine" "migration-linux2" {
        id                                                     = "/subscriptions/5ca62022-6aa2-4cee-aaa7-e7536c8d566c/resourceGroups/darts-migration-prod-rg/providers/Microsoft.Compute/virtualMachines/prddartsmigdb02"
        name                                                   = "prddartsmigdb02"
      ~ patch_assessment_mode                                  = "AutomaticByPlatform" -> "ImageDefault"
        tags                                                   = {
            "application"         = "darts"
            "builtFrom"           = "https://github.com/HMCTS/darts-shared-infrastructure.git"
            "businessArea"        = "Cross-Cutting"
            "contactSlackChannel" = "#darts-devs"
            "environment"         = "production"
            "managedBy"           = "Darts Modernisation"
        }
        # (39 unchanged attributes hidden)

        # (3 unchanged blocks hidden)
    }

  # azurerm_linux_virtual_machine.oracle["prddartsmigora01"] will be updated in-place
  ~ resource "azurerm_linux_virtual_machine" "oracle" {
        id                                                     = "/subscriptions/5ca62022-6aa2-4cee-aaa7-e7536c8d566c/resourceGroups/darts-migration-prod-rg/providers/Microsoft.Compute/virtualMachines/prddartsmigora01"
        name                                                   = "prddartsmigora01"
      ~ patch_assessment_mode                                  = "AutomaticByPlatform" -> "ImageDefault"
        tags                                                   = {
            "application"         = "darts"
            "builtFrom"           = "https://github.com/HMCTS/darts-shared-infrastructure.git"
            "businessArea"        = "Cross-Cutting"
            "contactSlackChannel" = "#darts-devs"
            "environment"         = "production"
            "managedBy"           = "Darts Modernisation"
        }
        # (39 unchanged attributes hidden)

        # (3 unchanged blocks hidden)
    }

  # azurerm_logic_app_standard.logic[0] will be updated in-place
  ~ resource "azurerm_logic_app_standard" "logic" {
      ~ app_settings                             = {
          - "FUNCTIONS_WORKER_RUNTIME" = "dotnet" -> null
        }
        id                                       = "/subscriptions/5ca62022-6aa2-4cee-aaa7-e7536c8d566c/resourceGroups/darts-migration-prod-rg/providers/Microsoft.Web/sites/darts-migration-logic-prod"
        name                                     = "darts-migration-logic-prod"
        tags                                     = {
            "application"         = "darts"
            "builtFrom"           = "https://github.com/HMCTS/darts-shared-infrastructure.git"
            "businessArea"        = "Cross-Cutting"
            "contactSlackChannel" = "#darts-devs"
            "environment"         = "production"
            "managedBy"           = "Darts Modernisation"
        }
        # (24 unchanged attributes hidden)

        # (2 unchanged blocks hidden)
    }

  # azurerm_managed_disk.mig-01-disk[0] will be created
  + resource "azurerm_managed_disk" "mig-01-disk" {
      + create_option                     = "Empty"
      + disk_iops_read_only               = (known after apply)
      + disk_iops_read_write              = (known after apply)
      + disk_mbps_read_only               = (known after apply)
      + disk_mbps_read_write              = (known after apply)
      + disk_size_gb                      = 20000
      + id                                = (known after apply)
      + location                          = "uksouth"
      + logical_sector_size               = (known after apply)
      + max_shares                        = 2
      + name                              = "migration-shared-disk"
      + network_access_policy             = "AllowAll"
      + optimized_frequent_attach_enabled = false
      + performance_plus_enabled          = false
      + public_network_access_enabled     = true
      + resource_group_name               = "darts-migration-prod-rg"
      + source_uri                        = (known after apply)
      + storage_account_type              = "Premium_LRS"
      + tier                              = (known after apply)
    }

  # azurerm_managed_disk.migration_os[0] will be created
  + resource "azurerm_managed_disk" "migration_os" {
      + create_option                     = "Empty"
      + disk_iops_read_only               = (known after apply)
      + disk_iops_read_write              = (known after apply)
      + disk_mbps_read_only               = (known after apply)
      + disk_mbps_read_write              = (known after apply)
      + disk_size_gb                      = 20
      + id                                = (known after apply)
      + location                          = "uksouth"
      + logical_sector_size               = (known after apply)
      + max_shares                        = (known after apply)
      + name                              = "migration-osdisk"
      + network_access_policy             = "AllowAll"
      + optimized_frequent_attach_enabled = false
      + performance_plus_enabled          = false
      + public_network_access_enabled     = true
      + resource_group_name               = "darts-migration-prod-rg"
      + source_uri                        = (known after apply)
      + storage_account_type              = "Standard_LRS"
      + tags                              = {
          + "application"         = "darts"
          + "builtFrom"           = "https://github.com/HMCTS/darts-shared-infrastructure.git"
          + "businessArea"        = "Cross-Cutting"
          + "contactSlackChannel" = "#darts-devs"
          + "environment"         = "production"
          + "managedBy"           = "Darts Modernisation"
        }
      + tier                              = (known after apply)
    }

  # azurerm_managed_disk.shared_disk[0] will be updated in-place
  ~ resource "azurerm_managed_disk" "shared_disk" {
        id                                = "/subscriptions/5ca62022-6aa2-4cee-aaa7-e7536c8d566c/resourceGroups/darts-migration-prod-rg/providers/Microsoft.Compute/disks/shared-disk"
        name                              = "shared-disk"
      ~ tags                              = {
          - "application"  = "darts" -> null
          - "builtFrom"    = "https://github.com/HMCTS/darts-shared-infrastructure.git" -> null
          - "businessArea" = "Cross-Cutting" -> null
          - "environment"  = "production" -> null
        }
        # (31 unchanged attributes hidden)
    }

  # azurerm_managed_disk.shared_disk_backup[0] will be updated in-place
  ~ resource "azurerm_managed_disk" "shared_disk_backup" {
        id                                = "/subscriptions/5ca62022-6aa2-4cee-aaa7-e7536c8d566c/resourceGroups/darts-migration-prod-rg/providers/Microsoft.Compute/disks/shared-disk-backup"
        name                              = "shared-disk-backup"
      ~ tags                              = {
          - "application"  = "darts" -> null
          - "builtFrom"    = "https://github.com/HMCTS/darts-shared-infrastructure.git" -> null
          - "businessArea" = "Cross-Cutting" -> null
          - "environment"  = "production" -> null
        }
        # (31 unchanged attributes hidden)
    }

  # azurerm_role_assignment.storage_owner_quarantine[0] will be created
  + resource "azurerm_role_assignment" "storage_owner_quarantine" {
      + condition_version                = (known after apply)
      + id                               = (known after apply)
      + name                             = (known after apply)
      + principal_id                     = "aee94636-8387-4a51-b5a7-a96e580a32d7"
      + principal_type                   = (known after apply)
      + role_definition_id               = (known after apply)
      + role_definition_name             = "Owner"
      + scope                            = "/subscriptions/5ca62022-6aa2-4cee-aaa7-e7536c8d566c/resourceGroups/darts-migration-prod-rg/providers/Microsoft.Storage/storageAccounts/saproddartsquarantine"
      + skip_service_principal_aad_check = (known after apply)
    }

  # azurerm_role_assignment.storage_owner_standard[0] will be created
  + resource "azurerm_role_assignment" "storage_owner_standard" {
      + condition_version                = (known after apply)
      + id                               = (known after apply)
      + name                             = (known after apply)
      + principal_id                     = "aee94636-8387-4a51-b5a7-a96e580a32d7"
      + principal_type                   = (known after apply)
      + role_definition_id               = (known after apply)
      + role_definition_name             = "Owner"
      + scope                            = "/subscriptions/5ca62022-6aa2-4cee-aaa7-e7536c8d566c/resourceGroups/darts-migration-prod-rg/providers/Microsoft.Storage/storageAccounts/saproddartsmig02"
      + skip_service_principal_aad_check = (known after apply)
    }

  # azurerm_windows_virtual_machine.migration_windows["prddartsassess"] will be updated in-place
  ~ resource "azurerm_windows_virtual_machine" "migration_windows" {
        id                                                     = "/subscriptions/5ca62022-6aa2-4cee-aaa7-e7536c8d566c/resourceGroups/darts-migration-prod-rg/providers/Microsoft.Compute/virtualMachines/prddartsassess"
        name                                                   = "prddartsassess"
      ~ patch_assessment_mode                                  = "AutomaticByPlatform" -> "ImageDefault"
        tags                                                   = {
            "application"         = "darts"
            "builtFrom"           = "https://github.com/HMCTS/darts-shared-infrastructure.git"
            "businessArea"        = "Cross-Cutting"
            "contactSlackChannel" = "#darts-devs"
            "environment"         = "production"
            "managedBy"           = "Darts Modernisation"
        }
      ~ vm_agent_platform_updates_enabled                      = true -> false
        # (40 unchanged attributes hidden)

        # (3 unchanged blocks hidden)
    }

  # azurerm_windows_virtual_machine.migration_windows["prddartsassure"] will be updated in-place
  ~ resource "azurerm_windows_virtual_machine" "migration_windows" {
        id                                                     = "/subscriptions/5ca62022-6aa2-4cee-aaa7-e7536c8d566c/resourceGroups/darts-migration-prod-rg/providers/Microsoft.Compute/virtualMachines/prddartsassure"
        name                                                   = "prddartsassure"
      ~ patch_assessment_mode                                  = "AutomaticByPlatform" -> "ImageDefault"
        tags                                                   = {
            "application"         = "darts"
            "builtFrom"           = "https://github.com/HMCTS/darts-shared-infrastructure.git"
            "businessArea"        = "Cross-Cutting"
            "contactSlackChannel" = "#darts-devs"
            "environment"         = "production"
            "managedBy"           = "Darts Modernisation"
        }
        # (41 unchanged attributes hidden)

        # (3 unchanged blocks hidden)
    }

  # azurerm_windows_virtual_machine.migration_windows["prddartsmig01"] will be updated in-place
  ~ resource "azurerm_windows_virtual_machine" "migration_windows" {
        id                                                     = "/subscriptions/5ca62022-6aa2-4cee-aaa7-e7536c8d566c/resourceGroups/darts-migration-prod-rg/providers/Microsoft.Compute/virtualMachines/prddartsmig01"
        name                                                   = "prddartsmig01"
      ~ patch_assessment_mode                                  = "AutomaticByPlatform" -> "ImageDefault"
        tags                                                   = {
            "application"         = "darts"
            "builtFrom"           = "https://github.com/HMCTS/darts-shared-infrastructure.git"
            "businessArea"        = "Cross-Cutting"
            "contactSlackChannel" = "#darts-devs"
            "environment"         = "production"
            "managedBy"           = "Darts Modernisation"
        }
        # (41 unchanged attributes hidden)

        # (3 unchanged blocks hidden)
    }

  # azurerm_windows_virtual_machine.migration_windows["prddartsmig02"] will be updated in-place
  ~ resource "azurerm_windows_virtual_machine" "migration_windows" {
        id                                                     = "/subscriptions/5ca62022-6aa2-4cee-aaa7-e7536c8d566c/resourceGroups/darts-migration-prod-rg/providers/Microsoft.Compute/virtualMachines/prddartsmig02"
        name                                                   = "prddartsmig02"
      ~ patch_assessment_mode                                  = "AutomaticByPlatform" -> "ImageDefault"
        tags                                                   = {
            "application"         = "darts"
            "builtFrom"           = "https://github.com/HMCTS/darts-shared-infrastructure.git"
            "businessArea"        = "Cross-Cutting"
            "contactSlackChannel" = "#darts-devs"
            "environment"         = "production"
            "managedBy"           = "Darts Modernisation"
        }
        # (41 unchanged attributes hidden)

        # (3 unchanged blocks hidden)
    }

  # azurerm_windows_virtual_machine.migration_windows["prddartsmig03"] will be updated in-place
  ~ resource "azurerm_windows_virtual_machine" "migration_windows" {
        id                                                     = "/subscriptions/5ca62022-6aa2-4cee-aaa7-e7536c8d566c/resourceGroups/darts-migration-prod-rg/providers/Microsoft.Compute/virtualMachines/prddartsmig03"
        name                                                   = "prddartsmig03"
      ~ patch_assessment_mode                                  = "AutomaticByPlatform" -> "ImageDefault"
        tags                                                   = {
            "application"         = "darts"
            "builtFrom"           = "https://github.com/HMCTS/darts-shared-infrastructure.git"
            "businessArea"        = "Cross-Cutting"
            "contactSlackChannel" = "#darts-devs"
            "environment"         = "production"
            "managedBy"           = "Darts Modernisation"
        }
        # (41 unchanged attributes hidden)

        # (3 unchanged blocks hidden)
    }

  # azurerm_windows_virtual_machine.migration_windows["prddartsmig04"] will be updated in-place
  ~ resource "azurerm_windows_virtual_machine" "migration_windows" {
        id                                                     = "/subscriptions/5ca62022-6aa2-4cee-aaa7-e7536c8d566c/resourceGroups/darts-migration-prod-rg/providers/Microsoft.Compute/virtualMachines/prddartsmig04"
        name                                                   = "prddartsmig04"
      ~ patch_assessment_mode                                  = "AutomaticByPlatform" -> "ImageDefault"
        tags                                                   = {
            "application"         = "darts"
            "builtFrom"           = "https://github.com/HMCTS/darts-shared-infrastructure.git"
            "businessArea"        = "Cross-Cutting"
            "contactSlackChannel" = "#darts-devs"
            "environment"         = "production"
            "managedBy"           = "Darts Modernisation"
        }
        # (41 unchanged attributes hidden)

        # (3 unchanged blocks hidden)
    }

  # azurerm_windows_virtual_machine.migration_windows["prddartsmig05"] will be updated in-place
  ~ resource "azurerm_windows_virtual_machine" "migration_windows" {
        id                                                     = "/subscriptions/5ca62022-6aa2-4cee-aaa7-e7536c8d566c/resourceGroups/darts-migration-prod-rg/providers/Microsoft.Compute/virtualMachines/prddartsmig05"
        name                                                   = "prddartsmig05"
      ~ patch_assessment_mode                                  = "AutomaticByPlatform" -> "ImageDefault"
        tags                                                   = {
            "application"         = "darts"
            "builtFrom"           = "https://github.com/HMCTS/darts-shared-infrastructure.git"
            "businessArea"        = "Cross-Cutting"
            "contactSlackChannel" = "#darts-devs"
            "environment"         = "production"
            "managedBy"           = "Darts Modernisation"
        }
        # (41 unchanged attributes hidden)

        # (3 unchanged blocks hidden)
    }

  # azurerm_windows_virtual_machine.migration_windows["prddartsoracle"] will be updated in-place
  ~ resource "azurerm_windows_virtual_machine" "migration_windows" {
        id                                                     = "/subscriptions/5ca62022-6aa2-4cee-aaa7-e7536c8d566c/resourceGroups/darts-migration-prod-rg/providers/Microsoft.Compute/virtualMachines/prddartsoracle"
        name                                                   = "prddartsoracle"
      ~ patch_assessment_mode                                  = "AutomaticByPlatform" -> "ImageDefault"
        tags                                                   = {
            "application"         = "darts"
            "builtFrom"           = "https://github.com/HMCTS/darts-shared-infrastructure.git"
            "businessArea"        = "Cross-Cutting"
            "contactSlackChannel" = "#darts-devs"
            "environment"         = "production"
            "managedBy"           = "Darts Modernisation"
        }
        # (41 unchanged attributes hidden)

        # (3 unchanged blocks hidden)
    }

  # azurerm_windows_virtual_machine.migration_windows["prddartsunstr"] will be updated in-place
  ~ resource "azurerm_windows_virtual_machine" "migration_windows" {
        id                                                     = "/subscriptions/5ca62022-6aa2-4cee-aaa7-e7536c8d566c/resourceGroups/darts-migration-prod-rg/providers/Microsoft.Compute/virtualMachines/prddartsunstr"
        name                                                   = "prddartsunstr"
      ~ patch_assessment_mode                                  = "AutomaticByPlatform" -> "ImageDefault"
        tags                                                   = {
            "application"         = "darts"
            "builtFrom"           = "https://github.com/HMCTS/darts-shared-infrastructure.git"
            "businessArea"        = "Cross-Cutting"
            "contactSlackChannel" = "#darts-devs"
            "environment"         = "production"
            "managedBy"           = "Darts Modernisation"
        }
        # (41 unchanged attributes hidden)

        # (3 unchanged blocks hidden)
    }

  # module.application_insights.azurerm_monitor_activity_log_alert.main[0] must be replaced
-/+ resource "azurerm_monitor_activity_log_alert" "main" {
      ~ id                  = "/subscriptions/5ca62022-6aa2-4cee-aaa7-e7536c8d566c/resourceGroups/darts-prod-rg/providers/Microsoft.Insights/activityLogAlerts/Application Insights daily cap reached - darts-prod" -> (known after apply)
      ~ name                = "Application Insights daily cap reached - darts-prod" -> "Application-Insights-daily-cap-reached-darts-prod" # forces replacement
        tags                = {
            "application"         = "darts"
            "builtFrom"           = "https://github.com/HMCTS/darts-shared-infrastructure.git"
            "businessArea"        = "Cross-Cutting"
            "contactSlackChannel" = "#darts-devs"
            "environment"         = "production"
            "managedBy"           = "Darts Modernisation"
        }
        # (5 unchanged attributes hidden)

      ~ criteria {
          - levels                  = [] -> null
          - resource_groups         = [] -> null
          - resource_ids            = [] -> null
          - resource_providers      = [] -> null
          - resource_types          = [] -> null
          - statuses                = [] -> null
          - sub_statuses            = [] -> null
            # (13 unchanged attributes hidden)

          ~ resource_health (known after apply)

          ~ service_health (known after apply)
        }

        # (1 unchanged block hidden)
    }

  # module.postgresql_flexible[0].azurerm_postgresql_flexible_server_active_directory_administrator.pgsql_adadmin must be replaced
-/+ resource "azurerm_postgresql_flexible_server_active_directory_administrator" "pgsql_adadmin" {
      ~ id                  = "/subscriptions/5ca62022-6aa2-4cee-aaa7-e7536c8d566c/resourceGroups/darts-migration-prod-rg/providers/Microsoft.DBforPostgreSQL/flexibleServers/darts-migration-prod/administrators/4d0554dd-fe60-424a-be9c-36636826d927" -> (known after apply)
      ~ object_id           = "4d0554dd-fe60-424a-be9c-36636826d927" -> "ef17f368-0aa5-43d5-9264-28080f83755e" # forces replacement
      ~ principal_name      = "DTS Platform Operations SC" -> "DTS Platform Operations PostgreSQL Admin Access SC" # forces replacement
        # (4 unchanged attributes hidden)
    }

  # module.postgresql_flexible[0].azurerm_postgresql_flexible_server_database.pg_databases["psql-prod-darts-replica"] will be created
  + resource "azurerm_postgresql_flexible_server_database" "pg_databases" {
      + charset   = "utf8"
      + collation = "en_GB.utf8"
      + id        = (known after apply)
      + name      = "psql-prod-darts-replica"
      + server_id = "/subscriptions/5ca62022-6aa2-4cee-aaa7-e7536c8d566c/resourceGroups/darts-migration-prod-rg/providers/Microsoft.DBforPostgreSQL/flexibleServers/darts-migration-prod"
    }

  # module.postgresql_flexible[0].azurerm_postgresql_flexible_server_database.pg_databases["psql-prod-dartsmig-01"] will be created
  + resource "azurerm_postgresql_flexible_server_database" "pg_databases" {
      + charset   = "utf8"
      + collation = "en_GB.utf8"
      + id        = (known after apply)
      + name      = "psql-prod-dartsmig-01"
      + server_id = "/subscriptions/5ca62022-6aa2-4cee-aaa7-e7536c8d566c/resourceGroups/darts-migration-prod-rg/providers/Microsoft.DBforPostgreSQL/flexibleServers/darts-migration-prod"
    }

  # module.postgresql_flexible[0].azurerm_postgresql_flexible_server_database.pg_databases["psql-prod-detsmig-01"] will be created
  + resource "azurerm_postgresql_flexible_server_database" "pg_databases" {
      + charset   = "utf8"
      + collation = "en_GB.utf8"
      + id        = (known after apply)
      + name      = "psql-prod-detsmig-01"
      + server_id = "/subscriptions/5ca62022-6aa2-4cee-aaa7-e7536c8d566c/resourceGroups/darts-migration-prod-rg/providers/Microsoft.DBforPostgreSQL/flexibleServers/darts-migration-prod"
    }

  # module.postgresql_flexible[0].null_resource.set-user-permissions-additionaldbs["psql-prod-darts-replica"] must be replaced
-/+ resource "null_resource" "set-user-permissions-additionaldbs" {
      ~ id       = "154290820805208931" -> (known after apply)
      ~ triggers = { # forces replacement
          + "db_reader_schemas" = "public"
          ~ "script_hash"       = "dbe0102f3129d4463913d5e01177e806bc6954005bdd98f20c242658634a1bbc" -> "88abfc1a97fc27a8f4d01362525f3b65e85409d3a475ecc79b11ad09a019e469"
            # (3 unchanged elements hidden)
        }
    }

  # module.postgresql_flexible[0].null_resource.set-user-permissions-additionaldbs["psql-prod-dartsmig-01"] must be replaced
-/+ resource "null_resource" "set-user-permissions-additionaldbs" {
      ~ id       = "4619313056984336138" -> (known after apply)
      ~ triggers = { # forces replacement
          + "db_reader_schemas" = "public"
          ~ "script_hash"       = "dbe0102f3129d4463913d5e01177e806bc6954005bdd98f20c242658634a1bbc" -> "88abfc1a97fc27a8f4d01362525f3b65e85409d3a475ecc79b11ad09a019e469"
            # (3 unchanged elements hidden)
        }
    }

  # module.postgresql_flexible[0].null_resource.set-user-permissions-additionaldbs["psql-prod-detsmig-01"] must be replaced
-/+ resource "null_resource" "set-user-permissions-additionaldbs" {
      ~ id       = "8499794368887057423" -> (known after apply)
      ~ triggers = { # forces replacement
          + "db_reader_schemas" = "public"
          ~ "script_hash"       = "dbe0102f3129d4463913d5e01177e806bc6954005bdd98f20c242658634a1bbc" -> "88abfc1a97fc27a8f4d01362525f3b65e85409d3a475ecc79b11ad09a019e469"
            # (3 unchanged elements hidden)
        }
    }

  # module.sa.azurerm_storage_account.storage_account will be updated in-place
  ~ resource "azurerm_storage_account" "storage_account" {
        id                                 = "/subscriptions/5ca62022-6aa2-4cee-aaa7-e7536c8d566c/resourceGroups/darts-prod-rg/providers/Microsoft.Storage/storageAccounts/dartssaprod"
        name                               = "dartssaprod"
        tags                               = {
            "application"         = "darts"
            "builtFrom"           = "https://github.com/HMCTS/darts-shared-infrastructure.git"
            "businessArea"        = "Cross-Cutting"
            "contactSlackChannel" = "#darts-devs"
            "environment"         = "production"
            "managedBy"           = "Darts Modernisation"
        }
        # (96 unchanged attributes hidden)

      + network_rules {
          + bypass         = [
              + "AzureServices",
            ]
          + default_action = "Allow"
        }

        # (3 unchanged blocks hidden)
    }

  # module.sa.time_rotating.rotate will be created
  + resource "time_rotating" "rotate" {
      + day              = (known after apply)
      + hour             = (known after apply)
      + id               = (known after apply)
      + minute           = (known after apply)
      + month            = (known after apply)
      + rfc3339          = (known after apply)
      + rotation_days    = 360
      + rotation_rfc3339 = (known after apply)
      + second           = (known after apply)
      + unix             = (known after apply)
      + year             = (known after apply)
    }

  # module.sa.time_static.pim_expiry must be replaced
-/+ resource "time_static" "pim_expiry" {
      ~ day     = 7 -> (known after apply)
      ~ hour    = 10 -> (known after apply)
      ~ id      = "2025-11-07T10:54:35Z" -> (known after apply)
      ~ minute  = 54 -> (known after apply)
      ~ month   = 11 -> (known after apply)
      ~ rfc3339 = "2025-11-07T10:54:35Z" -> (known after apply) # forces replacement
      ~ second  = 35 -> (known after apply)
      ~ unix    = 1762512875 -> (known after apply)
      ~ year    = 2025 -> (known after apply)
    }

  # module.sa-migration-quarantine[0].time_rotating.rotate will be created
  + resource "time_rotating" "rotate" {
      + day              = (known after apply)
      + hour             = (known after apply)
      + id               = (known after apply)
      + minute           = (known after apply)
      + month            = (known after apply)
      + rfc3339          = (known after apply)
      + rotation_days    = 360
      + rotation_rfc3339 = (known after apply)
      + second           = (known after apply)
      + unix             = (known after apply)
      + year             = (known after apply)
    }

  # module.sa-migration-quarantine[0].time_static.pim_expiry must be replaced
-/+ resource "time_static" "pim_expiry" {
      ~ day     = 16 -> (known after apply)
      ~ hour    = 14 -> (known after apply)
      ~ id      = "2026-01-16T14:50:10Z" -> (known after apply)
      ~ minute  = 50 -> (known after apply)
      ~ month   = 1 -> (known after apply)
      ~ rfc3339 = "2026-01-16T14:50:10Z" -> (known after apply) # forces replacement
      ~ second  = 10 -> (known after apply)
      ~ unix    = 1768575010 -> (known after apply)
      ~ year    = 2026 -> (known after apply)
    }

  # module.sa-migration-standard[0].azurerm_storage_account.storage_account will be updated in-place
  ~ resource "azurerm_storage_account" "storage_account" {
        id                                 = "/subscriptions/5ca62022-6aa2-4cee-aaa7-e7536c8d566c/resourceGroups/darts-migration-prod-rg/providers/Microsoft.Storage/storageAccounts/saproddartsmig02"
        name                               = "saproddartsmig02"
        tags                               = {
            "application"         = "darts"
            "builtFrom"           = "https://github.com/HMCTS/darts-shared-infrastructure.git"
            "businessArea"        = "Cross-Cutting"
            "contactSlackChannel" = "#darts-devs"
            "environment"         = "production"
            "managedBy"           = "Darts Modernisation"
        }
        # (96 unchanged attributes hidden)

      + network_rules {
          + bypass         = [
              + "AzureServices",
            ]
          + default_action = "Allow"
        }

        # (3 unchanged blocks hidden)
    }

  # module.sa-migration-standard[0].time_rotating.rotate will be created
  + resource "time_rotating" "rotate" {
      + day              = (known after apply)
      + hour             = (known after apply)
      + id               = (known after apply)
      + minute           = (known after apply)
      + month            = (known after apply)
      + rfc3339          = (known after apply)
      + rotation_days    = 360
      + rotation_rfc3339 = (known after apply)
      + second           = (known after apply)
      + unix             = (known after apply)
      + year             = (known after apply)
    }

  # module.sa-migration-standard[0].time_static.pim_expiry must be replaced
-/+ resource "time_static" "pim_expiry" {
      ~ day     = 12 -> (known after apply)
      ~ hour    = 16 -> (known after apply)
      ~ id      = "2026-01-12T16:16:08Z" -> (known after apply)
      ~ minute  = 16 -> (known after apply)
      ~ month   = 1 -> (known after apply)
      ~ rfc3339 = "2026-01-12T16:16:08Z" -> (known after apply) # forces replacement
      ~ second  = 8 -> (known after apply)
      ~ unix    = 1768234568 -> (known after apply)
      ~ year    = 2026 -> (known after apply)
    }

Plan: 18 to add, 20 to change, 8 to destroy.
ℹ️ Objects have changed outside of Terraform

This feature was introduced from Terraform v0.15.4.

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

  # module.sa.time_rotating.rotate has been deleted
  - resource "time_rotating" "rotate" {
        id               = "2024-11-12T10:54:35Z"
      - rotation_rfc3339 = "2025-11-07T10:54:35Z" -> null
        # (9 unchanged attributes hidden)
    }

  # module.sa-migration-quarantine[0].time_rotating.rotate has been deleted
  - resource "time_rotating" "rotate" {
        id               = "2025-01-21T14:50:10Z"
      - rotation_rfc3339 = "2026-01-16T14:50:10Z" -> null
        # (9 unchanged attributes hidden)
    }

  # module.sa-migration-standard[0].time_rotating.rotate has been deleted
  - resource "time_rotating" "rotate" {
        id               = "2025-01-17T16:16:08Z"
      - rotation_rfc3339 = "2026-01-12T16:16:08Z" -> null
        # (9 unchanged attributes hidden)
    }


Unless you have made equivalent changes to your configuration, or ignored the

@renovate renovate bot force-pushed the renovate/terraform-monorepo branch from 63bd7a5 to acf58c5 Compare August 28, 2024 09:50
@renovate renovate bot force-pushed the renovate/terraform-monorepo branch 6 times, most recently from c928b94 to 266cc47 Compare September 2, 2024 13:52
@renovate renovate bot changed the title Update dependency hashicorp/terraform to v1.9.5 Update dependency hashicorp/terraform to v1.9.5 - abandoned Jan 17, 2025
@renovate
Copy link
Copy Markdown
Contributor Author

renovate bot commented Jan 17, 2025

Autoclosing Skipped

This PR has been flagged for autoclosing. However, it is being skipped due to the branch being already modified. Please close/delete it manually or report a bug if you think this is in error.

@renovate renovate bot force-pushed the renovate/terraform-monorepo branch from 5104fae to ef64549 Compare February 11, 2026 08:22
@renovate renovate bot changed the title Update dependency hashicorp/terraform to v1.9.5 - abandoned Update dependency hashicorp/terraform to v1.14.4 Feb 11, 2026
@renovate renovate bot changed the title Update dependency hashicorp/terraform to v1.14.4 Update dependency hashicorp/terraform to v1.14.5 Feb 11, 2026
@renovate renovate bot force-pushed the renovate/terraform-monorepo branch from ef64549 to 1de08ce Compare February 11, 2026 17:10
@renovate renovate bot changed the title Update dependency hashicorp/terraform to v1.14.5 Update dependency hashicorp/terraform to v1.14.6 Feb 25, 2026
@renovate renovate bot force-pushed the renovate/terraform-monorepo branch from 1de08ce to 5aae407 Compare February 25, 2026 15:00
@renovate renovate bot force-pushed the renovate/terraform-monorepo branch from 5aae407 to fe5770f Compare March 11, 2026 17:54
@renovate renovate bot changed the title Update dependency hashicorp/terraform to v1.14.6 Update dependency hashicorp/terraform to v1.14.7 Mar 11, 2026
@renovate renovate bot changed the title Update dependency hashicorp/terraform to v1.14.7 Update dependency hashicorp/terraform to v1.14.8 Mar 25, 2026
@renovate renovate bot force-pushed the renovate/terraform-monorepo branch from fe5770f to eaed98e Compare March 25, 2026 13:08
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.

0 participants