Add support for Filestore deletion protection #3183
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Filestore deletion protection ensures that instances are not unintentionally deleted. A typical lifecycle for a user will look like:
In particular, enabling Filestore deletion protection does not prevent Terraform from destroying other resources. So a
gcluster destroy
command will destroy all resources except the Filestore and its dependencies. It will prevent modifications to a Filestore instance that require a destroy/create cycle.We cannot yet add this to an integration test because we do not support tests that intentionally fail to destroy. Manual testing is described below:
This fails with an error message:
It also prints an unhelpful stacktrace that I have reported at hashicorp/terraform-provider-google#20311
If I then attempt to deliberately destroy the deployment with
gcluster destroy hpc-slurm
, it will progress through the destruction of non-Filestore infrastructure but leave the Filestore and its dependencies in place.If I redeploy with a new blueprint that disables deletion protection:
I can then run
gcluster destroy hpc-slurm
without difficulty.Submission Checklist
NOTE: Community submissions can take up to 2 weeks to be reviewed.
Please take the following actions before submitting this pull request.