2015-09-21 27 views
8

Viene visualizzato questo errore mentre Ansible (1.9.2) sta tentando di decomprimere il file.ansible - unarchive - file di input non trovato

19:06:38 TASK: [jmeter | unpack jmeter] ************************************************ 
19:06:38 fatal: [jmeter01.veryfast.server.jenkins] => input file not found at /tmp/apache-jmeter-2.13.tgz or /tmp/apache-jmeter-2.13.tgz 
19:06:38 
19:06:38 FATAL: all hosts have already failed -- aborting 
19:06:38 

ho controllato sul server di destinazione, il file /tmp/apache-jmeter-2.13.tgz esiste e ha i permessi validi (per la prova ho anche dato 777, anche se non reqd ma ancora ottenuto il sopra mesg errore) .

Ho anche controllato md5sum di questo file (confrontato con quello che c'è sul sito di apache jmeter) - Corrisponde!

# md5sum apache-jmeter-2.13.tgz|grep 53dc44a6379b7b4a57976936f3a65e03 
53dc44a6379b7b4a57976936f3a65e03 apache-jmeter-2.13.tgz 

Quando sto usando tar -xvzf su questo file, tar è in grado di mostrare/estrarre il suo contenuto nel file .tgz.

Cosa potevo mancare? A questo punto, mi chiedo il metodo unarchive in Ansible deve avere qualche bug.

La mia ultima risorsa (se non riesco ad ottenere l'annullamento in Ansible al lavoro) sarebbe utilizzare il comando : "tar -xzvf/tmp/....." ma non voglio farlo come la mia prima preferenza

+0

è possibile fornire un esempio di attività non riuscita. – Vor

+0

@Vor L'attività è stata semplice come per esempio di Ansible Unarchive qui: http://docs.ansible.com/ansible/unarchive_module.html Ho perso l'uso di una delle opzioni (copy = no) .. il mio male credo. –

risposta

16

Il comportamento predefinito per Unarchive consiste nel trovare il file sul sistema locale, copiarlo sul telecomando e decomprimerlo. Ho il sospetto che se stai ricevendo un errore di file non trovato, devi specificare copy=no nella tua attività.

+1

Estremamente .. Ho trovato lo stesso :) Per impostazione predefinita, unarchive copia il file dal locale al remoto. Specificare copia: no se il file esiste già sul telecomando. Funziona con la cucina perché la cucina funziona nel contesto locale. https://github.com/ansible/ansible/issues/8957 –

+0

Grazie! Stavo affrontando il problema usando 'ansible-container' – mblaettermann

+0

Wow, stavo lottando con quel comportamento! Questo era davvero poco chiaro per me. Grazie ! – MMacphail