Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Change the default for google_sql_database.deletion_policy to DELETE #6936

Merged
merged 2 commits into from Dec 12, 2022

Conversation

rileykarson
Copy link
Member

@rileykarson rileykarson commented Dec 9, 2022

Fixes hashicorp/terraform-provider-google#13206

As mentioned in hashicorp/terraform-provider-google#13206 (comment), this change is technically a breaking change- but it's also fixing a regression in the resource, so it's being made in a minor version anyways. It will result in a diff, which I've called out in the changelog entry (intentionally included twice, as a bugfix and a note)

Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols:
  ~ update in-place

Terraform will perform the following actions:

  # google_sql_database.database will be updated in-place
  ~ resource "google_sql_database" "database" {
      ~ deletion_policy = "ABANDON" -> "DELETE"
        id              = "projects/graphite-test-rileykarson/instances/myinstance/databases/mydb"
        name            = "mydb"
        # (5 unchanged attributes hidden)
    }

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

Do you want to perform these actions?
  Terraform will perform the actions described above.
  Only 'yes' will be accepted to approve.

  Enter a value: yes

google_sql_database.database: Modifying... [id=projects/myproject/instances/myinstance/databases/mydb]
google_sql_database.database: Modifications complete after 1s [id=projects/myproject/instances/myinstance/databases/mydb]

This wasn't caught by our tests because the testcheckdestroy runs after terraform destroy, and deleting the instance deleted the database.

If this PR is for Terraform, I acknowledge that I have:

  • Searched through the issue tracker for an open issue that this either resolves or contributes to, commented on it to claim it, and written "fixes {url}" or "part of {url}" in this PR description. If there were no relevant open issues, I opened one and commented that I would like to work on it (not necessary for very small changes).
  • Generated Terraform, and ran make test and make lint to ensure it passes unit and linter tests.
  • Ensured that all new fields I added that can be set by a user appear in at least one example (for generated resources) or third_party test (for handwritten resources or update tests).
  • Ran relevant acceptance tests (If the acceptance tests do not yet pass or you are unable to run them, please let your reviewer know).
  • Read the Release Notes Guide before writing my release note below.

Release Note Template for Downstream PRs (will be copied)

sql: fixed an issue where `google_sql_database` was abandoned by default as of version `4.45.0`. Users who have upgraded to `4.45.0` or `4.46.0` will see a diff when running their next `terraform apply` after upgrading this version, indicating the `deletion_policy` field's value has changed from `"ABANDON"` to `"DELETE"`. This will create a no-op call against the API, but can otherwise be safely applied.
sql: fixed an issue where `google_sql_database` was abandoned by default as of version `4.45.0`. Users who have upgraded to `4.45.0` or `4.46.0` will see a diff when running their next `terraform apply` after upgrading this version, indicating the `deletion_policy` field's value has changed from `"ABANDON"` to `"DELETE"`. This will create a no-op call against the API, but can otherwise be safely applied.

@rileykarson rileykarson requested review from a team and melinath and removed request for a team December 9, 2022 23:54
@modular-magician
Copy link
Collaborator

Hi there, I'm the Modular magician. I've detected the following information about your changes:

Breaking Change(s) Detected

The following breaking change(s) were detected within your pull request.

If you believe this detection to be incorrect please raise the concern with your reviewer. If you intend to make this change you will need to wait for a major release window. An override-breaking-change label can be added to allow merging.

Diff report

Your PR generated some diffs in downstreams - here they are.

Terraform GA: Diff ( 2 files changed, 5 insertions(+), 5 deletions(-))
Terraform Beta: Diff ( 2 files changed, 5 insertions(+), 5 deletions(-))
TF Validator: Diff ( 2 files changed, 3 insertions(+), 3 deletions(-))

@modular-magician
Copy link
Collaborator

Tests analytics

Total tests: 2339
Passed tests 2088
Skipped tests: 244
Failed tests: 7

Action taken

Triggering VCR tests in RECORDING mode for the tests that failed during VCR. Click here to see the failed tests
TestAccFirebaserulesRelease_BasicRelease|TestAccSqlUser_postgresIAM|TestAccSqlUser_postgres|TestAccSqlUser_postgresAbandon|TestAccSQLDatabase_sqlDatabaseDeletionPolicyExample|TestAccLoggingBucketConfigProject_cmekSettings|TestAccDataSourceSqlDatabaseInstance_basic

@modular-magician
Copy link
Collaborator

Tests passed during RECORDING mode:
TestAccFirebaserulesRelease_BasicRelease[Debug log]
TestAccSqlUser_postgresIAM[Debug log]
TestAccSqlUser_postgres[Debug log]
TestAccSqlUser_postgresAbandon[Debug log]
TestAccLoggingBucketConfigProject_cmekSettings[Debug log]
TestAccDataSourceSqlDatabaseInstance_basic[Debug log]

Tests failed during RECORDING mode:
TestAccSQLDatabase_sqlDatabaseDeletionPolicyExample[Error message] [Debug log]

Please fix these to complete your PR
View the build log or the debug log for each test

@rileykarson rileykarson added the override-breaking-change Allows a potential breaking change to be merged label Dec 12, 2022
@rileykarson rileykarson requested review from slevenick and removed request for melinath December 12, 2022 20:53
@modular-magician
Copy link
Collaborator

Hi there, I'm the Modular magician. I've detected the following information about your changes:

Breaking Change(s) Detected

The following breaking change(s) were detected within your pull request.

If you believe this detection to be incorrect please raise the concern with your reviewer. If you intend to make this change you will need to wait for a major release window. An override-breaking-change label can be added to allow merging.

Diff report

Your PR generated some diffs in downstreams - here they are.

Terraform GA: Diff ( 3 files changed, 9 insertions(+), 8 deletions(-))
Terraform Beta: Diff ( 3 files changed, 9 insertions(+), 8 deletions(-))
TF Validator: Diff ( 2 files changed, 3 insertions(+), 3 deletions(-))

@modular-magician
Copy link
Collaborator

Tests analytics

Total tests: 2340
Passed tests 2095
Skipped tests: 244
Failed tests: 1

Action taken

Triggering VCR tests in RECORDING mode for the tests that failed during VCR. Click here to see the failed tests
TestAccLoggingBucketConfigProject_cmekSettings

@modular-magician
Copy link
Collaborator

Tests passed during RECORDING mode:
TestAccLoggingBucketConfigProject_cmekSettings[Debug log]

All tests passed
View the build log or the debug log for each test

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
override-breaking-change Allows a potential breaking change to be merged
Projects
None yet
3 participants