The use of IaC requires attention in some cases. Indeed, when the IaC is integrated into a CI/CD pipeline, resources containing important data can be automatically deleted. This can be done either by changing a property of a Terraform resource, which requires the deletion and recreation of this resource, or by executing the terraform destroy command. Fortunately, Terraform includes a configuration in its language that prevents the destruction of sensitive resources.
In this recipe, we will see how to prevent the destruction of resources that are managed in a Terraform configuration.
Getting ready
For this recipe, we will use a Terraform configuration, the code for which is available at https://github.com/PacktPublishing/Terraform-Cookbook/tree/master/CHAP07/sample-app. The purpose of this configuration is to manage the following resources in Azure:
- A Resource Group
- A Service Plan
- An Azure App Service (web app) instance
- An Azure Application...