From 519ca1c08322d1e670c13e60f31b22230fbdc9d3 Mon Sep 17 00:00:00 2001 From: Mark Goddard Date: Thu, 11 Feb 2021 09:23:21 +0000 Subject: [PATCH] Fix installation with pip install --user If kolla-ansible is installed via pip install --user, currently the kolla-ansible script is unable to locate the installed playbooks. This leads to a failure when running commands. This change fixes the issue by checking for the user's .local directory as a possible installation path. This fixes some of the scenario tests which were failing after switching to a user installation in Ifaf1948ed5d42eebaa62d7bad375bbfc12b134d5. Most tests did not fail since the kolla-ansible script in the source checkout was used. Closes-Bug: #1915527 Change-Id: I5b47a146627d06bb3fe4a747c5f20290c726b0f9 --- .../notes/fix-pip-install-user-5f871f67433e465a.yaml | 6 ++++++ tools/kolla-ansible | 2 ++ 2 files changed, 8 insertions(+) create mode 100644 releasenotes/notes/fix-pip-install-user-5f871f67433e465a.yaml diff --git a/releasenotes/notes/fix-pip-install-user-5f871f67433e465a.yaml b/releasenotes/notes/fix-pip-install-user-5f871f67433e465a.yaml new file mode 100644 index 0000000000..90689f9cfc --- /dev/null +++ b/releasenotes/notes/fix-pip-install-user-5f871f67433e465a.yaml @@ -0,0 +1,6 @@ +--- +fixes: + - | + Fixes an issue with executing ``kolla-ansible`` when installed via ``pip + install --user``. `LP#1915527 + `__ diff --git a/tools/kolla-ansible b/tools/kolla-ansible index dc30fa7c76..56e675e8ae 100755 --- a/tools/kolla-ansible +++ b/tools/kolla-ansible @@ -75,6 +75,8 @@ function find_base_dir { BASEDIR=/usr/share/kolla-ansible elif [[ ${dir_name} == "/usr/local/bin" ]]; then BASEDIR=/usr/local/share/kolla-ansible + elif [[ ${dir_name} == ~/.local/bin ]]; then + BASEDIR=~/.local/share/kolla-ansible elif [[ -n ${VIRTUAL_ENV} ]] && [[ ${dir_name} == "$(readlink -e "${VIRTUAL_ENV}/bin")" ]]; then if test -f ${VIRTUAL_ENV}/lib/python*/site-packages/kolla-ansible.egg-link; then # Editable install.