With I450171aad5e31d2925239ab3d0641cd23f6815a2 we defaulted ensure_pip_from_packages_with_python2 to True when Ansible was running under Python 2. Clarify in the documentation that it will be set in this condition. Also clarify that EPEL is required to install Python 2 pip packages on CentOS 7. The RedHat.yaml started installing python2 packages unconditionally when running under Python 2 with I2ab11bb45b6b2a49d54db39195228ab40141185c. This should have just relied on ensure_pip_from_packages_with_python2 variable, update that. Thus this will default to True when under Python 2, but will allow people to turn off including the Python 2 packages if they know they will not need them (e.g. they may run Ansible under Python 2, but only ever use python3 in testing, and thus can avoid the epel dependency). All of the distribution roles actually install the Python 3 pip/setuptools/wheel packages unconditionally when ensure_pip_from_packages is set; they do *not* install it for the ``ansible_python_interpreter`` as implied by the documentation. Change-Id: Ib948c8a156a0a96d610a310b6291781c5d3c7f96
2.6 KiB
Ensure pip is available
This role is intended install the requirements for the pip module on hosts.
Jobs that also wish to call pip
via shell commands
directly can also use this to ensure pip
is available.
However, it should be noted that calling pip
is ambiguous
when supporting many platforms. On some platforms it may install the
package under the Python 2 interpreter and in others Python 3. You
should use a qualified name (pip2
or pip3
) to
avoid confusion.
This role will also install wheel
components sufficient
to run bdist_wheel
builds or pip wheel
on a
source tree.
Role Variables
Output Variables
This variable will be set to a command appropriate for general usage with the
pip
modulevirtualenv_command
argument on the host. On Python 3 hosts this will be the inbuiltvenv
module, on Python 2 hosts thevirtualenv
package will be installed (this is avoided on Python 3 hosts as an unnecessary dependency).