2016-01-14 8 views
6

Uso ansible 1.9.4 e vorrei ottenere l'elenco dei file da una directory locale. Nella versione 2.0, c'è il modulo di ricerca ma questa versione è beta.Ansible: recupera l'elenco dei file dalla directory locale

Come fare questo in < 2.0?

Grazie

+0

In realtà, Ansible 2 non è più beta, è stato rilasciato due giorni fa. http://www.ansible.com/blog/ansible-2.0-launch – udondan

+0

Grande. Proverò questo – Kiva

+0

È possibile in 1.9.4. Cosa stai cercando di fare esattamente? – helloV

risposta

8

Qualche tempo fa stavo costruendo un automatismo che ha richiesto qualcosa di simile. Puoi controllare la mia domanda here.

Prima di ansible 2.0 non c'è modo di farlo senza usare command o shell.

Se davvero non si può effettuare l'aggiornamento a ansible 2.0, utilizzare il modulo command:

vars: 
    directory: /path/to/dir 

tasks: 

    - command: "ls {{directory}}" 
    register: dir_out 

    - debug: var={{item}} 
    with_items: dir_out.stdout_lines 
+0

Grazie. Ho pensato a questo modulo ma trovo questo brutto. Ma se è l'unica soluzione, andiamo. – Kiva

5

Questo è un esempio di elencare tutti i file con estensione .j2 nei modelli di directory e passarli a un modulo .

template: src="{{ item }}" dest="generated/{{ inventory_hostname }}/{{ item | basename | replace('.j2', '')}}" 
    delegate_to: 127.0.0.1 
    with_fileglob: templates/*.j2