ansible - unarchive - 未找到输入文件

Aru*_*gal 8 module tar unpack ansible ansible-playbook

当Ansible(1.9.2)试图解压缩文件时,我收到此错误.

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 
Run Code Online (Sandbox Code Playgroud)

我检查了目标服务器,/ tmp /apache-jmeter-2.13.tgz文件存在并且它具有有效权限(对于测试我也给了777,即使没有reqd但仍然得到上面的错误消息).

我还检查了这个文件的md5sum(将其与apache jmeter网站上的内容进行比较) - 它匹配!

# md5sum apache-jmeter-2.13.tgz|grep 53dc44a6379b7b4a57976936f3a65e03
53dc44a6379b7b4a57976936f3a65e03  apache-jmeter-2.13.tgz
Run Code Online (Sandbox Code Playgroud)

当我在这个文件上使用tar -xvzf时,tar能够在.tgz文件中显示/提取它的内容.

我能错过什么?在这一点上,我想知道Ansible中的unarchive方法/模块必须有一些bug.

我的最后一招(如果我无法在Ansible中取消归档工作)将使用Command:"tar -xzvf/tmp/....."但我不想这样做是我的第一选择.

val*_*rin 16

Unarchive的默认行为是在本地系统上查找文件,将其复制到远程,然后解压缩.我怀疑如果你找到一个文件未找到错误,那么你需要copy=no在你的任务中指定.