Use connect_to_aws where possible

`connect_to_aws` fixes a bug with security tokens in AWS.
Modules should use that rather than calling
`boto.x.connect_to_region`
This commit is contained in:
Will Thames 2015-11-06 19:02:00 +10:00
parent 1f9c204178
commit 0dd58e9326
9 changed files with 10 additions and 15 deletions

View file

@ -305,10 +305,7 @@ def main():
stack_outputs = {}
try:
cfn = boto.cloudformation.connect_to_region(
region,
**aws_connect_kwargs
)
cfn = connect_to_aws(boto.cloudformation, region, **aws_connect_kwargs)
except boto.exception.NoAuthHandlerFound, e:
module.fail_json(msg=str(e))
update = False

View file

@ -1361,7 +1361,7 @@ def main():
if region:
try:
vpc = boto.vpc.connect_to_region(region, **aws_connect_kwargs)
vpc = connect_to_aws(boto.vpc, region, **aws_connect_kwargs)
except boto.exception.NoAuthHandlerFound, e:
module.fail_json(msg = str(e))
else:

View file

@ -688,10 +688,7 @@ def main():
# If we have a region specified, connect to its endpoint.
if region:
try:
vpc_conn = boto.vpc.connect_to_region(
region,
**aws_connect_kwargs
)
vpc_conn = connect_to_aws(boto.vpc, region, **aws_connect_kwargs)
except boto.exception.NoAuthHandlerFound, e:
module.fail_json(msg = str(e))
else:

View file

@ -566,7 +566,7 @@ def main():
try:
if region:
iam = boto.iam.connect_to_region(region, **aws_connect_kwargs)
iam = connect_to_aws(boto.iam, region, **aws_connect_kwargs)
else:
iam = boto.iam.connection.IAMConnection(**aws_connect_kwargs)
except boto.exception.NoAuthHandlerFound, e:

View file

@ -248,7 +248,7 @@ def main():
try:
if region:
iam = boto.iam.connect_to_region(region, **aws_connect_kwargs)
iam = connect_to_aws(boto.iam, region, **aws_connect_kwargs)
else:
iam = boto.iam.connection.IAMConnection(**aws_connect_kwargs)
except boto.exception.NoAuthHandlerFound, e:

View file

@ -316,7 +316,7 @@ def main():
try:
if region:
iam = boto.iam.connect_to_region(region, **aws_connect_kwargs)
iam = connect_to_aws(boto.iam, region, **aws_connect_kwargs)
else:
iam = boto.iam.connection.IAMConnection(**aws_connect_kwargs)
except boto.exception.NoAuthHandlerFound, e:

View file

@ -240,7 +240,7 @@ def main():
module.fail_json(msg = str("Either region or AWS_REGION or EC2_REGION environment variable or boto config aws_region or ec2_region must be set."))
try:
conn = boto.rds.connect_to_region(region, **aws_connect_kwargs)
conn = connect_to_aws(boto.rds, region, **aws_connect_kwargs)
except boto.exception.BotoServerError, e:
module.fail_json(msg = e.error_message)

View file

@ -112,7 +112,7 @@ def main():
module.fail_json(msg = str("Either region or AWS_REGION or EC2_REGION environment variable or boto config aws_region or ec2_region must be set."))
try:
conn = boto.rds.connect_to_region(region, **aws_connect_kwargs)
conn = connect_to_aws(boto.rds, region, **aws_connect_kwargs)
except boto.exception.BotoServerError, e:
module.fail_json(msg = e.error_message)

View file

@ -460,7 +460,8 @@ def main():
walrus = urlparse.urlparse(s3_url).hostname
s3 = boto.connect_walrus(walrus, **aws_connect_kwargs)
else:
s3 = boto.s3.connect_to_region(location, is_secure=True, **aws_connect_kwargs)
aws_connect_args['is_secure'] = True
s3 = connect_to_aws(boto.s3, location, **aws_connect_args)
# use this as fallback because connect_to_region seems to fail in boto + non 'classic' aws accounts in some cases
if s3 is None:
s3 = boto.connect_s3(**aws_connect_kwargs)