simonw/s3-credentials

`delete-bucket` command

simonw opened this issue · 2 comments

I already have delete-user - this would be a similar utility but for deleting buckets. Mainly so I don't have to remember how to do it with awscli.

A already wrote some code for doing this in a test here:

# Delete any buckets beginning s3-credentials-tests.
buckets = json.loads(get_output("list-buckets", "--array"))
buckets_to_delete = [
bucket["Name"]
for bucket in buckets
if bucket["Name"].startswith("s3-credentials-tests.")
]
for bucket in buckets_to_delete:
print("Deleting bucket: {}".format(bucket))
# Delete all objects in the bucket
boto3.resource("s3").Bucket(bucket).objects.all().delete()
# Delete the bucket
s3.delete_bucket(Bucket=bucket)

This addition to the CLI would be much appreciated, whether as a new subcommand or alternatively as part of the delete-user subcommand (as a --delete-bucket flag, paralleling the s3-credentials create BUCKET_NAME --create-bucket pattern). Thanks for developing s3-credentials!