我最近在我们的开发环境中从1.9.1升级到ansible 2.1。我使用virtualenv来使用pip安装ansible 2.1。最近,在运行剧本时,我收到了以下错误:
fatal: [xxxxx-dev.com]: FAILED! => {"changed": false, "failed": true, "msg": "unsupported parameter for module: gather_subset"}我看到在Ansible 2.1中,他们增加了一个新功能来收集有关主机的有限事实,但默认情况下,它将subset设置为所有人。因此,我没有在我的配置文件中设置这个值,并期望它默认为所有。
这个失败只发生过一次,随后的运行是成功的。我还读到了here,如果ansible也是通过apt单独安装的,它可能会导致问题,但是由于我使用的是venv,我会假设它将被迫使用Version2.1。任何帮助都是非常感谢的。
发布于 2016-08-08 15:20:58
经过两天的挣扎,我终于明白了为什么失败了。
原因是我在ansible.cfg中有一个默认的配置设置,它使ansible拾取系统ansible库来自/usr/share/ansible,而不是我们安装库的虚拟环境。在我们运行游戏手册的主机上,系统ansible库已经过时,从而导致失败。我删除了设置,以确保ansible只拾取安装在venv中的最新模块。
https://stackoverflow.com/questions/38747611
复制相似问题