确保帐户存在唯一的s3存储桶
s3-unique-bucket的Python项目详细描述
S3唯一桶
实用程序为每个s3帐户创建一个唯一的bucket,对部署场景很有用。
你是否需要一个bucket来上传你的部署模板?您是否总是对手动创建它们而不是真正地使部署管道自动化而感到恼火?好吧,别再担心了!
这个脚本是一个easy和idempent方法,只需创建一个s3 bucket,它将有很高的机会避免名称冲突。 如果运行第二次,脚本识别桶已经存在,并且只会释放桶的名称以重用。
示例
bucket=$(s3-unique-bucket) aws s3 cp foo.txt s3://$bucket/foo.txt
工作原理
bucket名称由用户可设置的前缀、base32编码的帐户id的sha1散列和创建bucket的区域生成。
然后脚本检查在这个帐户上是否存在一个带有这个名称的桶。如果不是,则创建它。最后,bucket的名称通过stdout
发出。
文档
使用环境变量设置aws凭据和区域。
AWS_ACCESS_KEY_ID
AWS_SECRET_ACCESS_KEY
AWS_DEFAULT_REGION
其余的是用命令行参数配置的。
-p
/--prefix
:用户可设置前缀(可选)
默认值:account-bucket
bucket名称以这个可设置的前缀开头。也可以是空的。请注意,如果前缀不为空,则会在前缀和哈希值之间自动添加一个短划线(“-”)。
-p
/--prefix
:aws帐户区域(条件)
condition:如果未设置环境变量AWS_DEFAULT_REGION
,则必须提供。
应该在哪个区域创建bucket。