diff options
author | Jhon Honce <jhonce@redhat.com> | 2015-06-03 15:11:01 -0700 |
---|---|---|
committer | Jhon Honce <jhonce@redhat.com> | 2015-06-03 15:14:36 -0700 |
commit | 6d4dd9f43d4b5dc747bfff5700d2e7b6a562ba9c (patch) | |
tree | 487a6f1d84d370a20f6358731cb484ef4a49215f /bin/cluster | |
parent | d7e8272e6e027f2ecc34781f011ea731051565fd (diff) | |
download | openshift-6d4dd9f43d4b5dc747bfff5700d2e7b6a562ba9c.tar.gz openshift-6d4dd9f43d4b5dc747bfff5700d2e7b6a562ba9c.tar.bz2 openshift-6d4dd9f43d4b5dc747bfff5700d2e7b6a562ba9c.tar.xz openshift-6d4dd9f43d4b5dc747bfff5700d2e7b6a562ba9c.zip |
Issue 119 - Add support for ~/.openshift-ansible
* Allow user to override: validate_cluster_ids, cluster_ids, providers
Diffstat (limited to 'bin/cluster')
-rwxr-xr-x | bin/cluster | 28 |
1 files changed, 25 insertions, 3 deletions
diff --git a/bin/cluster b/bin/cluster index 2a6cb4b58..0a6ee7ec4 100755 --- a/bin/cluster +++ b/bin/cluster @@ -184,21 +184,43 @@ class Cluster(object): if __name__ == '__main__': """ User command to invoke ansible playbooks in a "known" environment + + Reads ~/.openshift-ansible for default configuration items + [DEFAULT] + validate_cluster_ids = False + cluster_ids = production,stage,integration + providers = gce,aws,libvirt """ + environment = ConfigParser.SafeConfigParser({ + 'cluster_ids': 'prod,stg,int', + 'validate_cluster_ids': 'False', + 'providers': 'gce,aws,libvirt', + }) + + path = os.path.expanduser("~/.openshift-ansible") + if os.path.isfile(path): + environment.read(path) + cluster = Cluster() - providers = ['gce', 'aws', 'libvirt'] parser = argparse.ArgumentParser( description='Python wrapper to ensure proper environment for OpenShift ansible playbooks', ) parser.add_argument('-v', '--verbose', action='count', help='Multiple -v options increase the verbosity') - parser.add_argument('--version', action='version', version='%(prog)s 0.2') + parser.add_argument('--version', action='version', version='%(prog)s 0.3') meta_parser = argparse.ArgumentParser(add_help=False) + providers = environment.get('DEFAULT', 'providers').split(',') meta_parser.add_argument('provider', choices=providers, help='provider') - meta_parser.add_argument('cluster_id', help='prefix for cluster VM names') + + if environment.get('DEFAULT', 'validate_cluster_ids').lower() in ("yes", "true", "1"): + meta_parser.add_argument('cluster_id', choices=environment.get('DEFAULT', 'cluster_ids').split(','), + help='prefix for cluster VM names') + else: + meta_parser.add_argument('cluster_id', help='prefix for cluster VM names') + meta_parser.add_argument('-t', '--deployment-type', choices=['origin', 'online', 'enterprise'], help='Deployment type. (default: origin)') |