我正在使用基本的Ansible Playbook,以便在Ubuntu 18.04系统上安装一些Python软件包。为了演示起见,请使用以下示例剧本... for update of EmailAddres, TelephoneNumber ...
。
test.yml
我使用---
- name: Installing demo package.
hosts: localhost
tasks:
- name: Installing with pip.
pip:
name:
- "numpy"
virtualenv: "venv"
virtualenv_python: python3.6
安装了一个虚拟环境,并使用python3 -m venv venv
激活了它。但是,如果运行source venv/bin/activate/
,则会出现以下错误:
ansible-playbook test.yml
错误分析:
我从this related question运行了几个命令。
fatal: [localhost]: FAILED! => {"changed": false, "cmd": "venv/bin/pip install numpy", "msg": "[Errno 2] No such file or directory", "rc": 2}
返回:
ansible localhost -a "which pip"
我尝试使用localhost | SUCCESS | rc=0 >>
/home/mydir/venv/bin/pip
清除哈希并获得了
ansible localhost -m shell -a "hash -r"
然后,localhost | SUCCESS | rc=0 >>
返回:
ansible localhost -m shell -a "type pip""
但是,即使我可以在外壳中使用localhost | SUCCESS | rc=0 >>
pip is /home/mydir/venv/bin/pip
安装numpy,也没有任何干扰,问题仍然存在。
Ansible的版本为2.5.1。