Commit 64809451 by jctanner

Merge pull request #4541 from Kami/improve_template_render_error_messages

Make errors which get thrown during template rendering more user-friendly
parents 7e8e186b 922f6189
......@@ -20,6 +20,7 @@ import re
import codecs
import jinja2
from jinja2.runtime import StrictUndefined
from jinja2.exceptions import TemplateSyntaxError
import yaml
import json
from ansible import errors
......@@ -448,7 +449,15 @@ def template_from_file(basedir, path, vars):
setattr(environment,key.strip(),ast.literal_eval(val.strip()))
environment.template_class = J2Template
t = environment.from_string(data)
try:
t = environment.from_string(data)
except TemplateSyntaxError, e:
# Throw an exception which includes a more user friendly error message
values = {'name': realpath, 'lineno': e.lineno, 'error': str(e)}
msg = 'file: %(name)s, line number: %(lineno)s, error: %(error)s' % \
values
error = errors.AnsibleError(msg)
raise error
vars = vars.copy()
try:
template_uid = pwd.getpwuid(os.stat(realpath).st_uid).pw_name
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment