我遇到了代码;
- pip: name=ansible version=<ansible_version> extra_args='--ignore-installed'
在我的测试中,我确认了Ansible版本的升级
我还尝试使用raw
模块;
- raw: pip install ansible==<ansible_version>
但是在播放手册执行期间,此后的任务失败。有各种类型的错误:
ImportError:无法导入名称AnsiblePlugin
TypeError:mkdtemp()最多需要4个参数(给定5个)
...
或者剧本执行甚至会挂在下一个任务上。
我想知道通过使用ansible-playbook
执行本身来升级Ansible的版本是否真的可行。在Ansible版本升级之后以某种方式重新加载Ansible核心模块是否可能?
答案 0 :(得分:0)
Ansible
可以通过pip
本身Ansible
模块进行升级,但升级后任何后续任务都可能失败,这是一种自然行为。
这里唯一的例外是远程主机。如果Ansible
的安装或升级是由在远程主机上执行的Ansible
任务执行的,则它将继续运行而不会导致失败。因为在这种情况下,Ansible
的实际安装是在远程主机上完成的,而不更新localhost上Ansible
的任何配置。