summaryrefslogtreecommitdiffstats
path: root/bin
diff options
context:
space:
mode:
authorJhon Honce <jhonce@redhat.com>2015-06-04 09:18:09 -0700
committerJhon Honce <jhonce@redhat.com>2015-06-04 09:18:09 -0700
commitbef62f1fc820348149cbbda1e30e8ae2f786f0f6 (patch)
tree538937ac6126b0cfc77338b7c38387e43392f2c9 /bin
parent6a2eee0ce38b445b4856b26e919e75df93de5899 (diff)
parent73a3673b55e84c255fc13a350a7a6989e6df4bf3 (diff)
downloadopenshift-bef62f1fc820348149cbbda1e30e8ae2f786f0f6.tar.gz
openshift-bef62f1fc820348149cbbda1e30e8ae2f786f0f6.tar.bz2
openshift-bef62f1fc820348149cbbda1e30e8ae2f786f0f6.tar.xz
openshift-bef62f1fc820348149cbbda1e30e8ae2f786f0f6.zip
Merge pull request #262 from jwhonce/wip/config
Issue 119 - Add support for ~/.openshift-ansible
Diffstat (limited to 'bin')
-rwxr-xr-xbin/cluster28
1 files changed, 25 insertions, 3 deletions
diff --git a/bin/cluster b/bin/cluster
index 2a6cb4b58..bf8198de9 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 = marketing,sales
+ providers = gce,aws,libvirt
"""
+ environment = ConfigParser.SafeConfigParser({
+ 'cluster_ids': 'marketing,sales',
+ '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)')