Enable optional Python 3 support
Add USE_PYTHON3 and PYTHON3_VERSION variables to allow services to use
python 3 if they indicate support in their python package metadata.
Tested in Heat here -> I837c2fba682ab430d50e9f43913f2fed20325a7a.
Project config change to add a dedicated job to Heat is here -> I0837e62d6ccc66397a5e409f0961edd4be31f467
Change-Id: I079e18b58b214bf8362945c253d6d894ca8b1a6b
diff --git a/tools/install_pip.sh b/tools/install_pip.sh
index ab5efb2..f239c7b 100755
--- a/tools/install_pip.sh
+++ b/tools/install_pip.sh
@@ -8,6 +8,7 @@
# Assumptions:
# - update pip to $INSTALL_PIP_VERSION
+# - if USE_PYTHON3=True, PYTHON3_VERSION refers to a version already installed
set -o errexit
set -o xtrace
@@ -31,6 +32,8 @@
echo "Distro: $DISTRO"
function get_versions {
+ # FIXME(dhellmann): Deal with multiple python versions here? This
+ # is just used for reporting, so maybe not?
PIP=$(which pip 2>/dev/null || which pip-python 2>/dev/null || true)
if [[ -n $PIP ]]; then
PIP_VERSION=$($PIP --version | awk '{ print $2}')
@@ -75,6 +78,9 @@
touch $LOCAL_PIP.downloaded
fi
sudo -H -E python $LOCAL_PIP
+ if python3_enabled; then
+ sudo -H -E python${PYTHON3_VERSION} $LOCAL_PIP
+ fi
}
@@ -114,6 +120,7 @@
# python in f23 depends on the python-pip package
if ! { is_fedora && [[ $DISTRO == "f23" ]]; }; then
uninstall_package python-pip
+ uninstall_package python3-pip
fi
install_get_pip
@@ -122,6 +129,7 @@
configure_pypi_alternative_url
fi
+set -x
pip_install -U setuptools
get_versions