我有一个无法安装某个软件包的Ansible脚本。
以下是脚本中的相关代码。
- name: Install php-cli
yum:
name: php70-php-cli
state: present
当Ansible playbook运行时,此行没有错误。但是,该软件包根本没有安装在服务器上。
可能是什么问题?有没有办法调试它?
编辑 - 这是剧本的输出:
ok: [10.x.x.x] => {"changed": false, "msg": "", "rc": 0, "results": ["php70-php-cli-7.0.9-1.el7.remi.x86_64 providing php70-php-cli is already installed"]}
答案 0 :(得分:1)
我怀疑您的问题与state: present
与state: latest
的差异有关。
看起来像state: present
的yum模块检查rpmdb以查看pkg是否存在并且不再做任何事情。
由于您的手动安装似乎表明您有一些与您的软件包相关的附加依赖项或更新,因此请尝试使用state: latest
运行,该yum check-update
内部将运行(@{id=1; skip=$true}).GetEnumerator() | %{ $_.Key }
id
skip
并查看是否将这些文件拉入。< / p>