Fix: Pin openstacksdk<0.99
[releng/global-jjb.git] / shell / python-tools-install.sh
index 578923c..27b7aa4 100644 (file)
@@ -23,13 +23,13 @@ if [[ ! -f /tmp/pre-build-complete ]]; then
 
     echo "Generating Requirements File"
     cat << 'EOF' > "$requirements_file"
-lftools[openstack]
+openstacksdk<0.99
 python-heatclient
 python-openstackclient
 python-magnumclient
 kubernetes
 niet~=1.4.2
-tox>=3.7.0 # Tox 3.7 or greater is necessary for parallel mode support
+cryptography<3.4
 yq
 
 # PINNED INDIRECT DEPENDENCIES
@@ -39,25 +39,29 @@ yq
 # necessary so that future maintainers of this file can make decisions to
 # remove the workarounds in the future.
 importlib-resources<2.0.0  # virtualenv 20.0.21 requires importlib-resources<2.0.0 (RELENG-2993)
+pyparsing<3.0.0 # httplib2 0.20.1 requires pyparsing<3,>=2.4.2
 EOF
 
     #Python 3.5 in Ubuntu 16.04 workaround
     if [[ -f /etc/lsb-release ]]; then
-       # shellcheck disable=SC1091
-       source /etc/lsb-release
-       if [[ $DISTRIB_RELEASE == "16.04" ]]; then
-         echo "WARNING: Python projects should move to Ubuntu 18.04 to continue receiving support"
-         echo "zipp==1.1.0" >> "$requirements_file"
-       fi
+        # shellcheck disable=SC1091
+        source /etc/lsb-release
+        if [[ $DISTRIB_RELEASE == "16.04" && $DISTRIB_ID == "Ubuntu" ]]; then
+            echo "WARNING: Python projects should move to Ubuntu 18.04 to continue receiving support"
+            echo "zipp==1.1.0" >> "$requirements_file"
+        fi
     fi
-    # Use `python -m pip` to upgrade to the latest pip into user site-packages
+
     python3 -m pip install --user --quiet --upgrade pip
     python3 -m pip install --user --quiet --no-warn-script-location --upgrade setuptools
-    python3 -m pip install --user --quiet --no-warn-script-location --upgrade --upgrade-strategy eager -r "$requirements_file"
+    python3 -m pip install --user --quiet --no-warn-script-location --upgrade lftools[openstack]
+    python3 -m pip install --user --quiet --no-warn-script-location --upgrade \
+        --upgrade-strategy eager -r "$requirements_file"
     # installs are silent, show version details in log
     python3 --version
     python3 -m pip --version
     python3 -m pip freeze
+
     rm -rf "$requirements_file"
     touch /tmp/pre-build-complete
 fi