ansible – iterar todos los hosts y recuperar datos de los resultados

Quiero usar ansible para get todos los controles remotos de los git-repositories en un server. En un server puede haber muchos git-repos en una carpeta especial / home / vhosts / cms / y en cada informe puede haber múltiples controles remotos para el git-repo. Así que quiero recorrer todos los hosts y recorrer todos los repositorys de git y get una list de todos los controles remotos actuales.

Mi problema es el trabajo con las variables y los loops en ansible. Puedo acceder a los repos y recuperar toda la información de 'git remote -v'. El resultado se ve algo así como

TASK: [debug var=gitremotes] ************************************************** ok: [<host>] => { "var": { "gitremotes": { "changed": true, "msg": "All items completed", "results": [ { "changed": true, "cmd": "cd /home/vhosts/cms/customer/html && nice -n 25 git remote -v", "delta": "0:00:00.005960", "end": "2016-01-08 15:10:34.044679", "invocation": { "module_args": "cd /home/vhosts/cms/customer/htm && nice -n 25 git remote -v", "module_complex_args": {}, "module_name": "shell" }, "item": "customer", "rc": 0, "start": "2016-01-08 15:10:34.038719", "stderr": "", "stdout": "origin\tssh://git.gitserver/customer.git(fetch)\norigin\tssh://git.gitserver/customer.git (push)", "stdout_lines": [ "origin\tssh://git.gitserver/customer.git (fetch)", "origin\tssh://git.gitserver/customer.git (push)" ], "warnings": [] } ] } } } 

Puedo acceder a este stdout_lines pero necesito recuperar todos los gitremotes de todos los repositorys git en todos los serveres. ¿Cómo podría uno hacer eso?

Lo que funciona en este momento es recuperar todos los vhosts e iterar sobre ellos.

 --- - name: get a list of all remotes hosts: webservers tasks: - include: ../roles/webservers/tasks/get_cms_instances.yml - name: loop over instances and get git remotes shell: cd /home/vhosts/cms/{{ item }}/html && nice -n 25 git remote -v with_items: vhosts.stdout_lines when: vhosts.rc == 0 register: gitremotes - debug: var=gitremotes - debug: var="{{ gitremotes.results[0].stdout_lines[0] }}" 

¿De qué manera irías a recuperar la información?

Gracias por adelantado,

Timo