From 52e84220e5a3b99140e5fc1b36468065c8950775 Mon Sep 17 00:00:00 2001 From: Clark Boylan Date: Wed, 4 May 2022 14:09:56 -0700 Subject: [PATCH] Make note of python_version being a string value The type of the python_version variable matters when we interpret it after yaml deserialization. If it is interpreted as a float then 3.1 == 3.10 and those python versions are very different. Instead make note that it should be a string and then update all of the tox jobs to set this variable as a string. Change-Id: I55bbc70526a13e6bd4c3c32da8590ad2af76fe7c --- roles/ensure-python/README.rst | 6 ++++++ zuul.d/python-jobs.yaml | 14 +++++++------- 2 files changed, 13 insertions(+), 7 deletions(-) diff --git a/roles/ensure-python/README.rst b/roles/ensure-python/README.rst index 26c0cdc03..b1cfce851 100644 --- a/roles/ensure-python/README.rst +++ b/roles/ensure-python/README.rst @@ -16,16 +16,21 @@ There are three ways to install the python interpreter: **Role Variables** .. zuul:rolevar:: python_version + :type: str Optional version of python interpreter to install, such as ``3.7``. + Note that you should use a string value for this variable rather than + a float. This avoids problems with 3.10 being evaluated as 3.1. .. zuul:rolevar:: python_use_pyenv + :type: bool :default: False Whether to optionally use ``pyenv`` to install python instead of distro packages. .. zuul:rolevar:: python_use_stow + :type: bool :default: False In case you have image with already prepared python versions, for example used the @@ -33,6 +38,7 @@ There are three ways to install the python interpreter: by setting this variable to ``true``. .. zuul:rolevar:: python_stow_dir + :type: str :default: /usr/local/stow Sets the target directory for stow. This should be the path to the diff --git a/zuul.d/python-jobs.yaml b/zuul.d/python-jobs.yaml index 5fe00ab2a..95722442c 100644 --- a/zuul.d/python-jobs.yaml +++ b/zuul.d/python-jobs.yaml @@ -105,7 +105,7 @@ Uses tox with the ``py27`` environment. vars: tox_envlist: py27 - python_version: 2.7 + python_version: "2.7" - job: name: tox-py34 @@ -120,7 +120,7 @@ compatibility. vars: tox_envlist: py34 - python_version: 3.4 + python_version: "3.4" - job: name: tox-py35 @@ -135,7 +135,7 @@ compatibility. vars: tox_envlist: py35 - python_version: 3.5 + python_version: "3.5" - job: name: tox-py36 @@ -146,7 +146,7 @@ Uses tox with the ``py36`` environment. vars: tox_envlist: py36 - python_version: 3.6 + python_version: "3.6" - job: name: tox-py37 @@ -157,7 +157,7 @@ Uses tox with the ``py37`` environment. vars: tox_envlist: py37 - python_version: 3.7 + python_version: "3.7" - job: name: tox-py38 @@ -168,7 +168,7 @@ Uses tox with the ``py38`` environment. vars: tox_envlist: py38 - python_version: 3.8 + python_version: "3.8" - job: name: tox-py39 @@ -179,7 +179,7 @@ Uses tox with the ``py39`` environment. vars: tox_envlist: py39 - python_version: 3.9 + python_version: "3.9" - job: name: tox-py310