虽然Ansible本身有一个触发自定义错误的方法 ,但我找不到Jinja类似的东西。
我目前的方法使用语法错误:
{% if 'ansible_mounts' in hostvars[host] %} # {{ host }} knows its mount-points {% else %} # {% error!! No ansible_mounts listed for host - fact-gathering must've failed %} {% endif %}
但是在运行时渲染效果不佳 – 需要查看模板文件并search错误(渲染甚至不包括行号!)。
有没有办法从Jinja模板内输出整齐的失败信息?
从评论回答:
有没有简单的方法来完成这一点 – 只能通过自定义插件。 有关详细信息,请参阅: https : //stackoverflow.com/questions/21778252/how-to-raise-an-exception-in-a-jinja2-macro