import boto3
import json
import sys
+import os
from multiprocessing.dummy import Pool as ThreadPool
from functools import partial
-DEFAULT_REGIONS = ['us-east-1', 'us-west-2']
+#DEFAULT_REGIONS = ['us-east-1', 'us-west-2']
+DEFAULT_REGIONS = ['us-east-2']
HOSTVARS = {}
+try:
+ PUBLIC = len(os.environ['INVENTORY_PUBLIC']) > 0
+except:
+ PUBLIC = False
def allASGInstances(asgc):
'Return a tuple of a dict of each ASG name listing the instance IDs within it, and a list of all instance IDs.'
parser = argparse.ArgumentParser(description='dynamic Ansible inventory from AWS Autoscaling Groups')
-parser.add_argument('--public', action='store_true', help='inventory public IPs (default: private IPs)')
+parser.add_argument('--public', action='store_true' if not PUBLIC else 'store_false', help='inventory public IPs (default: private IPs)')
parser.add_argument('--profile', metavar='PROFILE', dest='profile_name', help='AWS Profile (default: current IAM Role)')
parser.add_argument('--regions', metavar='REGION', nargs='+', default=DEFAULT_REGIONS, help='AWS Regions (default: %(default)s)')
parser.add_argument('--list', action='store_true')