Skip to content

Commit 16ad237

Browse files
author
Clark Perkins
committed
Give a better error message when blueprint_dir is missing
1 parent 34a7ac0 commit 16ad237

File tree

1 file changed

+12
-3
lines changed

1 file changed

+12
-3
lines changed

stackdio/cli/mixins/blueprints.py

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,10 @@ def list_templates(client):
5252
click.echo('Missing blueprint directory config')
5353
return
5454

55-
blueprint_dir = os.path.expanduser(client.config['blueprint_dir'])
55+
try:
56+
blueprint_dir = os.path.expanduser(client.config['blueprint_dir'])
57+
except KeyError:
58+
raise click.UsageError('Missing \'blueprint_dir\' in config. Please run `configure`.')
5659

5760
click.echo('Template mappings:')
5861
mapping = yaml.safe_load(open(os.path.join(blueprint_dir, 'mappings.yaml'), 'r'))
@@ -123,7 +126,10 @@ def create_blueprint(client, mapping, template, var_file, no_prompt):
123126

124127
click.secho('Advanced users only - use the web UI if this isn\'t you!\n', fg='green')
125128

126-
blueprint_dir = client.config['blueprint_dir']
129+
try:
130+
blueprint_dir = client.config['blueprint_dir']
131+
except KeyError:
132+
raise click.UsageError('Missing \'blueprint_dir\' in config. Please run `configure`.')
127133

128134
if mapping:
129135
mapping = yaml.safe_load(open(os.path.join(blueprint_dir, 'mappings.yaml'), 'r'))
@@ -157,7 +163,10 @@ def create_all_blueprints(client):
157163
"""
158164
Create all the blueprints in the map file
159165
"""
160-
blueprint_dir = os.path.expanduser(client.config['blueprint_dir'])
166+
try:
167+
blueprint_dir = os.path.expanduser(client.config['blueprint_dir'])
168+
except KeyError:
169+
raise click.UsageError('Missing \'blueprint_dir\' in config. Please run `configure`.')
161170
mapping = yaml.safe_load(open(os.path.join(blueprint_dir, 'mappings.yaml'), 'r'))
162171

163172
for name, vals in mapping.items():

0 commit comments

Comments
 (0)