当以编程方式设置区域时,在boto中连接到弹性beanstalk的好方法是什么?

2024-10-06 12:18:22 发布

您现在位置:Python中文网/ 问答频道 /正文

我用的是肉搏(http://docs.pythonboto.org/en/latest/)并希望在连接到弹性豆茎时以编程方式选择一个区域。到目前为止,我能想到的只有:

import boto
from boto.beanstalk.layer1 import Layer1
Layer1.DefaultRegionName = 'us-west-1'
Layer1.DefaultRegionEndpoint = 'elasticbeanstalk.us-west-1.amazonaws.com'
ebs = boto.connect_beanstalk()

理论上我可以打电话给你

^{pr2}$

我不知道如何构造一个boto.regioninfo.regioninfo,这显然是Layer1类所期望的。在


Tags: orgimporthttpdocslatestboto弹性en
2条回答

我的方法是使用connect_to_region,如下所示:

import boto
ebs = boto.beanstalk.connect_to_region('us-west-1')

这将负责正确初始化(和缓存)所需的RegionInfo对象。在

在我看来,这显然是一个bug,但是仔细查看代码,RegionInfo上的connection参数似乎从未使用过。在构造自己的RegionInfo并将其传递给构造函数时,将其设置为None似乎对我有效。在

regionInfo = boto.regioninfo.RegionInfo(None, 'us-west-1', 'elasticbeanstalk.us-west-1.amazonaws.com')
beanstalk = boto.connect_beanstalk(region=regionInfo)
mt.describe_applications()

不管怎样,我很确定在建立连接时只使用了完整的region endpoint参数—例如。”elasticbeanstalk.us公司-西一。亚马逊网站““

相关问题 更多 >