Terraform HOWTO: delete a non-empty AWS S3 bucket
The Amazon AWS S3 service provides a number of different ways to delete a non-empty S3 bucket; some of the approaches involve "emptying" the bucket prior to deleting it. The process can also vary a bit depending on whether or not the bucket has versioning enabled.