我正在尝试使用 ansible
在 vagrant
中设置一个 Django 项目。我使用以下代码来安装pip packages
:
- name: Setup Virtualenv
pip: virtualenv={{ virtualenv_path }} virtualenv_python=python3 requirements={{ virtualenv_path }}/requirements.txt
我需要为 django 项目使用 python3
,即使我已经明确提到使用 python3,它也installing the pip packages via pip2
.我已确保在虚拟机上安装了python3。
请帮我通过 pip3 安装软件包。
有同样的问题。使用executable
有解决方法:
- name: Install and upgrade pip
pip:
name: pip
extra_args: --upgrade
executable: pip3
尝试使用executable
选项。模块文档pip
摘录:
executable
(在 1.3 中新增(显式可执行文件或可执行文件的路径名,用于为系统中安装的特定版本的 Python 运行 pip。例如 pip-3.3,如果系统中同时安装了 Python 2.7 和 3.3,并且您想为 Python 3.3 安装运行 pip。它不能与"virtualenv"参数(在 2.1 中添加(一起指定。默认情况下,它将采用 ansible 使用的 python 解释器的适当版本,例如 python 3 上的 pip3 和 python 2 上的 pip2 或 pip。
更新:
若要组合virtualenv
路径和替代可执行文件,请使用如下所示virtualenv_command
:
- pip:
virtualenv: /tmp/py3
virtualenv_command: /usr/bin/python3 -m venv
name: boto
virtualenv_command
需要绝对路径。