From 2dcbc28abab7eb51b9e3fd549fab49d42c48e90f Mon Sep 17 00:00:00 2001 From: Federico Ressi Date: Wed, 5 Feb 2020 11:29:51 +0100 Subject: [PATCH] Install versioned python RPMs on RedHat distros Set default python3 version as 3 for cases python3 is not installed before running DevStack. Implements installation of required python3x package for RedHat family distros with package name depending on configurable ${PYTHON3_VERSION}. Examples: 3 => python3 python3-devel (default one) 3.6 => python36 python36-devel 3.7 => python37 python37-devel This should help in situations where there are more than one python available for given platform and DevStack is asked to pick one by its full 3.x version Change-Id: I49d86bc9193165e0a41e8e8720be37d81a4e7ee0 --- inc/python | 6 +++++- stackrc | 2 +- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/inc/python b/inc/python index 9d9f38b5a9..cf61389709 100644 --- a/inc/python +++ b/inc/python @@ -457,7 +457,11 @@ function install_python3 { elif is_suse; then install_package python3-devel python3-dbm elif is_fedora; then - install_package python3 python3-devel + if [ "$os_VENDOR" = "Fedora" ]; then + install_package python${PYTHON3_VERSION//.} + else + install_package python${PYTHON3_VERSION//.} python${PYTHON3_VERSION//.}-devel + fi fi } diff --git a/stackrc b/stackrc index e11a34c8cc..4e33b6838f 100644 --- a/stackrc +++ b/stackrc @@ -142,7 +142,7 @@ export USE_PYTHON3=$(trueorfalse True USE_PYTHON3) # version of Python 3 to this variable will install the app using that # version of the interpreter instead of 2.7. _DEFAULT_PYTHON3_VERSION="$(_get_python_version python3)" -export PYTHON3_VERSION=${PYTHON3_VERSION:-${_DEFAULT_PYTHON3_VERSION:-3.6}} +export PYTHON3_VERSION=${PYTHON3_VERSION:-${_DEFAULT_PYTHON3_VERSION:-3}} # Just to be more explicit on the Python 2 version to use. _DEFAULT_PYTHON2_VERSION="$(_get_python_version python2)"