【发布时间】:2015-12-13 14:35:09
【问题描述】:
概述:
我正在尝试使用配置文件 (~/aws/confg) 覆盖 boto3 中的某些变量。
在我的用例中,我想使用 fakes3 服务并将 S3 请求发送到 localhost。
示例:
在boto(不是boto3)中,我可以在~/.boto 中创建一个类似于此的配置:
[s3]
host = localhost
calling_format = boto.s3.connection.OrdinaryCallingFormat
[Boto]
is_secure = False
客户端可以成功获取所需的更改,而不是将流量发送到真正的 S3 服务,而是将其发送到本地主机。
>>> import boto
>>> boto.connect_s3()
S3Connection:localhost
>>>
我尝试了什么:
我正在尝试使用boto3 库来获得类似的结果。通过查看源代码,我发现我可以使用~/aws/config 位置。我还在botocore 的unittests 文件夹中找到了一个示例配置。
我尝试修改配置以实现所需的行为。但不幸的是,它不起作用。
这里是配置:
[default]
aws_access_key_id = XXXXXXXXX
aws_secret_access_key = YYYYYYYYYYYYYY
region = us-east-1
is_secure = False
s3 =
host = localhost
问题:
- 如何使用配置文件覆盖
clients变量? - 在哪里可以找到配置允许的变量的完整列表?
【问题讨论】:
-
可能是更新,但如果我们使用 python 2,我们可以这样做:boto.connect_s3( aws_access_key_id=[ACCESS KEY], aws_secret_access_key=[SECRET KEY], host='localhost', port =4572,is_secure=True,calling_format=boto.s3.connection.OrdinaryCallingFormat())
标签: python amazon-web-services boto boto3 botocore