Use a virtualenv for remote operations by default

The docker python module fails to install without a virtualenv with
pip10.  The following error is seen in the task Ensure docker SDK for
python is installed:

Cannot uninstall 'ipaddress'. It is a distutils installed project and
thus we cannot accurately determine which files belong to it which would
lead to only a partial uninstall

This is fixed by using a remote Python virtual environment for executing
Kayobe Ansible tasks in the default Kayobe configuration.

Change-Id: I1348e428d736f93c76316c7fb5f2708b99554eb3
Story: 2002010
Task: 19648
This commit is contained in:
Mark Goddard 2018-08-28 11:27:00 +01:00
parent 228fe88cf7
commit 974ec85aad
5 changed files with 27 additions and 0 deletions

View File

@ -132,3 +132,7 @@ If kayobe detects that ``ansible_python_interpreter`` is set and references a
virtual environment, it will create the virtual environment if it does not virtual environment, it will create the virtual environment if it does not
exist. Typically this variable should be set via a group variable for hosts in exist. Typically this variable should be set via a group variable for hosts in
the ``seed``, ``seed-hypervisor``, and/or ``overcloud`` groups. the ``seed``, ``seed-hypervisor``, and/or ``overcloud`` groups.
The default Kayobe configuration in the ``kayobe-config`` repository sets
``ansible_python_interpreter`` to ``{{ virtualenv_path }}/kayobe/bin/python``
for the ``seed``, ``seed-hypervisor``, and ``overcloud`` groups.

View File

@ -0,0 +1,3 @@
---
# Use a virtual environment for remote operations.
ansible_python_interpreter: "{{ virtualenv_path }}/kayobe/bin/python"

View File

@ -0,0 +1,3 @@
---
# Use a virtual environment for remote operations.
ansible_python_interpreter: "{{ virtualenv_path }}/kayobe/bin/python"

View File

@ -0,0 +1,3 @@
---
# Use a virtual environment for remote operations.
ansible_python_interpreter: "{{ virtualenv_path }}/kayobe/bin/python"

View File

@ -0,0 +1,14 @@
---
fixes:
- |
Fixes an issue introduced by the release of ``pip`` version 10, whereby the
Python ``docker`` package would fail to install. This is resolved by using
a remote Python virtual environment for executing Kayobe Ansible tasks by
default. See `Story 2002010
<https://storyboard.openstack.org/#!/story/2002010>`__ for details.
upgrade:
- |
Modifies the default ``kayobe-config`` configuration to use a remote Python
virtual environment for executing Kayobe Ansible tasks. This affects hosts
in the ``seed``, ``seed-hypervisor``, and ``overcloud`` groups. See `Story
2002010 <https://storyboard.openstack.org/#!/story/2002010>`__ for details.