From 0180483a567b94edc9c3d5da75f5bec695740f7e Mon Sep 17 00:00:00 2001 From: Justin Wind Date: Thu, 9 Mar 2017 16:39:16 -0800 Subject: [PATCH] allow inventory script to select IP domain via envvar --- inventory/asg-inventory.py | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/inventory/asg-inventory.py b/inventory/asg-inventory.py index 1eba92e..34c6e1c 100755 --- a/inventory/asg-inventory.py +++ b/inventory/asg-inventory.py @@ -9,13 +9,19 @@ import argparse 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.' @@ -84,7 +90,7 @@ def mergeDictOfLists(a, b): 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') -- 2.45.2