win_unzip 无法提取文件

win_unzip 无法提取文件

我想使用 Ansible 在某些 Windows 7 主机上安装(旧版本的)Eclipse。我的剧本安装了 Java 并下载了所需的 zip 文件,但win_unzip没有提取该文件。

- name: Ensure Eclipse Luna RCP is extracted
  win_unzip:
    src: '%TEMP%\eclipse-rcp-luna-SR2-win32.zip'
    dest: '%userprofile%\Programs\eclipse_luna'
  tags: eclipse

当任务执行时,我可以看到一个powershell进程正在 Windows 主机上运行,​​并且正在消耗一些 CPU。一段时间后,我通过 Ansible 获得了以下结果:

TASK [Ensure Eclipse Luna RCP is extracted] ************
ok: [192.168.1.87] => {"changed": false,
                       "dest": "C:\\Users\\testuser\\Programs\\eclipse_luna",
                       "removed": false,
                       "src": "C:\\Users\\testuser\\AppData\\Local\\Temp\\eclipse-rcp-luna-SR2-win32.zip"
                      }

结果有点奇怪,因为win_zip文档状态:

这个模块并不是真正幂等的,它每次都会提取档案,并报告变化。

因此我期望的是changed而不是ok。尽管如此,文件夹C:\Users\testuser\Programs\eclipse_luna还是创建了,但是是空的。

答案1

在发布这个问题后,我尝试自己解压该 zip 文件,并发现该文件有错误。

删除文件并重新运行剧本后,win_unzip一切如预期。

相关内容