Today we’ve released Terraform CLI v0.15.2.
Along with some more small bug fixes and enhancements based on feedback, this also includes a new feature to allow forcing replacement of a particular object as part of the normal plan/apply workflow, without the need for the extra step of marking the object as “tainted” first:
terraform apply -replace=aws_instance.example
This is part of an ongoing effort to bring all operations that have externally-visible side-effects into the plan+apply workflow, rather than as separate one-shot commands. The
terraform taint command remains for those who have already built workflows around it, but we’d suggest considering the new
-replace=... option as a replacement since it gives an opportunity to preview the effect of the change before taking any actions that might affect concurrent work done by other collaborators.