Ah, here's a good example of why I hate Ansible : I never found a way to dynamically generate objects and I doubt it's even possible.
There's this module we made that's very generic and used to template files. It expects a list of dicts (each describing from which repos/branch to get the file, and where to put it once templated).
Now I have to use it with a list of files which all come from the same branch of the same repos. There's no way to write the friggin'
{{ filenames | map (\f -> { repos:"foo", branch:"master", path: f + ".txt" }) }}
This is such a basic thing to do, how can you people use Ansible despite its lacking this ?