Boto/Python Windows 上的脚本在尝试创建重复 S3 存储桶时不会出错

Boto/Python script on Windows does not give an error when trying to create Duplicate S3 bucket

我正在使用 Windows 机器执行 boto 脚本。我有一个创建存储桶的 boto 脚本文件。该脚本会在第一次和所有后续时间运行。

我的想法是脚本应该 ERRORSECOND 时间,因为它正在尝试创建 DUPLICATE bucket – 但是没有报错。

有什么方法可以抛出错误(除了编写脚本来检查存储桶是否存在?)

MyScript.py

import boto

s3 = boto.connect_s3(profile_name='myprofile')
bucket = s3.create_bucket("myownuniquebucketname")

boto.config

[Boto]

debug = 2

似乎 create_bucket 调用是 幂等,这是典型的 REST 接口。我已更改代码以仅在不存在时创建存储桶。

# Boto 2.x
import boto

s3 = boto.connect_s3(profile_name='myprofile')

lookupResult = s3.lookup('myownuniquebucketname', validate=True)
if (lookupResult is None):
    bucket = s3.create_bucket("myownuniquebucketname")
    print("Code to create bucket")
else:
    print("Bucket already exists")
如果您尝试在区域 us-east-1 下创建重复的存储桶,

S3 不会引发存储桶创建错误。 按照 link 和错误代码 "BucketAlreadyOwnedByYou"