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 committed by Matt Clay
parent be19982313
commit 52accd7d1f
9 changed files with 10 additions and 15 deletions

View file

@ -312,10 +312,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

@ -1387,7 +1387,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

@ -712,10 +712,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

@ -585,7 +585,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

@ -246,7 +246,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

@ -317,7 +317,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

@ -245,7 +245,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

@ -116,7 +116,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

@ -459,7 +459,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)