Ansible can be fine, but the errors are indeed cryptic.
If anyone is thinking about using ansible, I would suggest approaching it like a software project.
Define specialised roles, create test playbooks for those individual roles, use these roles to compose more complex playbooks, and offload logic to custom ansible modules that are written in python. This way you catch template problems early and won't wrestle with heavy logic in the template or playbook layer.
Comments
Ansible can be fine, but the errors are indeed cryptic.
If anyone is thinking about using ansible, I would suggest approaching it like a software project.
Define specialised roles, create test playbooks for those individual roles, use these roles to compose more complex playbooks, and offload logic to custom ansible modules that are written in python. This way you catch template problems early and won't wrestle with heavy logic in the template or playbook layer.