Environment details
- OS type and version: Alpine Linux
- Python version:
python --version: Python 3.11.4
- pip version:
pip --version: pip 23.1.2 from /opt/venv-azcli/lib/python3.11/site-packages/pip (python 3.11)
google-cloud-storage version: pip show google-cloud-storage: 2.10.0
Steps to reproduce
Create a versioned bucket
Add some data
Exclude bucket forcefully.
While it would be expected that all blobs are deleted and the bucket excluded, it returns 409.
Code example
storage_client = storage.Client(credentials=mycredentials,project=myproject)
bucket_name = 'sa-bk3-hec42-cis-tmp'
bucket = storage_client.create_bucket(bucket_name, location="EUROPE-WEST4")
bucket.versioning_enabled = True
bucket.patch()
blob = storage.Blob(name=f"wrapper/test", bucket=bucket)
blob.upload_from_string(data='decomission', content_type="text/plain")
bucket = storage_client.get_bucket(bucket_name)
bucket.delete(force=True)
Stack trace
(<class 'google.api_core.exceptions.Conflict'>, Conflict('DELETE https://storage.googleapis.com/storage/v1/b/sa-bk3-hec42-cis-tmp?prettyPrint=false: The bucket you tried to delete is not empty.'), <traceback object at 0x102c416c0>)
Expected Result
According to the documentation, If force=True is passed, this will first attempt to delete all the objects / blobs in the bucket (i.e. try to empty the bucket).
Besides, 409 should indicates that the bucket name is not available. This error number seems to be misleading.
Environment details
python --version: Python 3.11.4pip --version: pip 23.1.2 from /opt/venv-azcli/lib/python3.11/site-packages/pip (python 3.11)google-cloud-storageversion:pip show google-cloud-storage: 2.10.0Steps to reproduce
Create a versioned bucket
Add some data
Exclude bucket forcefully.
While it would be expected that all blobs are deleted and the bucket excluded, it returns 409.
Code example
Stack trace
Expected Result
According to the documentation, If force=True is passed, this will first attempt to delete all the objects / blobs in the bucket (i.e. try to empty the bucket).
Besides, 409 should indicates that the bucket name is not available. This error number seems to be misleading.