Add simple parameter test to yaml-validate.py

Output a warning for parameters which look unused, this should help
developers clean up the template a bit, and eventually could maybe
be developed further into something we can use for gating.

Change-Id: Ide4fbe3c85854cbddee44801d39ae73003d63bb8
This commit is contained in:
Steven Hardy 2016-01-12 19:03:30 +00:00
parent 1dd6de571c
commit 5cb0134c84
1 changed files with 10 additions and 1 deletions

View File

@ -24,10 +24,19 @@ def exit_usage():
def validate(filename):
print('Validating %s' % filename)
try:
yaml.load(open(filename).read())
tpl = yaml.load(open(filename).read())
except Exception:
print(traceback.format_exc())
return 1
# yaml is OK, now walk the parameters and output a warning for unused ones
for p in tpl.get('parameters', {}):
str_p = '\'%s\'' % p
in_resources = str_p in str(tpl.get('resources', {}))
in_outputs = str_p in str(tpl.get('outputs', {}))
if not in_resources and not in_outputs:
print('Warning: parameter %s in template %s appears to be unused'
% (p, filename))
return 0
if len(sys.argv) < 2: