Merge pull request #13166 from defionscode/ec2_util_boto3

Patch to remove dependency on boto when only using boto3
This commit is contained in:
Brian Coca 2016-01-25 21:55:21 -05:00
commit e3a58a883a

View file

@ -29,6 +29,7 @@ import os
try:
import boto3
import botocore
HAS_BOTO3 = True
except:
HAS_BOTO3 = False
@ -138,11 +139,17 @@ def get_aws_connection_info(module, boto3=False):
elif 'EC2_REGION' in os.environ:
region = os.environ['EC2_REGION']
else:
# boto.config.get returns None if config not found
region = boto.config.get('Boto', 'aws_region')
if not region:
region = boto.config.get('Boto', 'ec2_region')
if not boto3:
# boto.config.get returns None if config not found
region = boto.config.get('Boto', 'aws_region')
if not region:
region = boto.config.get('Boto', 'ec2_region')
elif boto3 and HAS_BOTO3:
# here we don't need to make an additional call, will default to 'us-east-1' if the below evaluates to None.
region = botocore.session.get_session().get_config_variable('region')
elif boto3 and not HAS_BOTO3:
module.fail_json("Boto3 is required for this module. Please install boto3 and try again")
if not security_token:
if 'AWS_SECURITY_TOKEN' in os.environ:
security_token = os.environ['AWS_SECURITY_TOKEN']