summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xbin/cluster10
1 files changed, 8 insertions, 2 deletions
diff --git a/bin/cluster b/bin/cluster
index fbbffadc9..0d760c342 100755
--- a/bin/cluster
+++ b/bin/cluster
@@ -143,8 +143,14 @@ class Cluster(object):
inventory = '-i inventory/aws/hosts'
- missing = [key for key in ['AWS_ACCESS_KEY_ID', 'AWS_SECRET_ACCESS_KEY'] if key not in os.environ]
- if len(missing) > 0:
+ key_vars = ['AWS_ACCESS_KEY_ID', 'AWS_SECRET_ACCESS_KEY']
+ key_missing = [key for key in key_vars if key not in os.environ]
+
+ boto_conf_files = ['~/.aws/credentials', '~/.boto']
+ conf_exists = lambda conf: os.path.isfile(os.path.expanduser(conf))
+ boto_configs = [ conf for conf in boto_conf_files if conf_exists(conf)]
+
+ if len(key_missing) > 0 and len(boto_configs) == 0:
raise ValueError("PROVIDER aws requires {} environment variable(s). See README_AWS.md".format(missing))
elif 'libvirt' == provider: