91 lines
3.4 KiB
ReStructuredText
91 lines
3.4 KiB
ReStructuredText
.. _2024-1-testing-runtime:
|
|
|
|
==========================
|
|
Tested Runtimes for 2024.1
|
|
==========================
|
|
|
|
At the start of the 2024.1 development cycle, the current :ref:`LTS or stable
|
|
distribution <pti-linux-distros>` versions are:
|
|
|
|
* Ubuntu 22.04
|
|
* Debian 12
|
|
|
|
Additional testing for a smooth upgrade
|
|
---------------------------------------
|
|
|
|
* Debian 11 (Supported in previous SLURP release 2023.1)
|
|
|
|
Best Effort
|
|
-----------
|
|
|
|
This distribution list is the best effort to test them in OpenStack CI/CD.
|
|
These may not be part of integrated testing and may be tested periodically only.
|
|
|
|
* CentOS Stream 9
|
|
* Rocky Linux 9
|
|
|
|
Python Runtimes for 2024.1
|
|
==========================
|
|
|
|
It is the :doc:`policy <../../resolutions/20181024-python-update-process>` that
|
|
each OpenStack release cycle will target the latest available version of
|
|
Python; default Python runtime on the distributions listed above; and versions
|
|
used in integration tests at the start of the cycle, at least until the point
|
|
when all projects have migrated to a later version.
|
|
|
|
Also, as per the Python testing requirements defined in :ref:`pti-python`,
|
|
projects should avoid removing Python versions that have not reached EOL
|
|
without a solid reason.
|
|
|
|
Based on the criteria above, all Python-based projects must target and test
|
|
against, at a minimum:
|
|
|
|
* Python 3.8 (available as default in Ubuntu 20.04)
|
|
Python 3.8 should be the minimum supported/required version for 2024.1.
|
|
This does not imply that Ubuntu 20.04 is the minimum supported distribution
|
|
but it may be used for tox testing. supporting Python 3.8 does not require
|
|
full tempest testing on Ubuntu 20.04, but py38 unit tests are expected as
|
|
a minimum requirement for all Python projects. The minimal requirement for
|
|
testing jobs against Python versions above is to ensure language compatibility,
|
|
having more extensive testing is allowed.
|
|
|
|
* Python 3.9 (available as default in Debian 11 and Centos 9 Stream)
|
|
This will become the future minimum supported version for 2024.2
|
|
when Python 3.8 is EOL. This will remain the minimum supported version
|
|
until 2025.2 when Python 3.9 is EOL.
|
|
|
|
In previous cycle testing, we have not seen much incompatible change between
|
|
Python 3.8 and Python 3.10, it is okay to skip running the Python 3.9 testing
|
|
jobs assuming that anything that works on Python 3.8 and 3.11 coverage is
|
|
provided.
|
|
|
|
|
|
* Python 3.10 (available as default in Ubuntu 22.04)
|
|
|
|
In previous cycle testing, we have not seen many incompatible changes between
|
|
Python 3.8 and Python 3.10. It is okay to skip running the Python 3.10 testing
|
|
jobs assuming that anything that works on Python 3.8 and 3.11 will also
|
|
work on 3.10.
|
|
|
|
Note: as most tempest jobs run on Ubuntu 22.04, it is expected that python
|
|
3.10 will be tested in tempest jobs. As such, it will be transitively tested
|
|
for compatibility even without explicit unit and functional tests.
|
|
|
|
* Python 3.11 (available as default in Debian 12)
|
|
|
|
This is the upper bound of required testing for 2024.1.
|
|
|
|
More details on Python requirements can be found in :ref:`pti-python`.
|
|
|
|
Node.js Runtime for 2024.1
|
|
==========================
|
|
|
|
Based on the available and supported versions of Node.js (in either our :ref:`LTS or stable
|
|
distributions <pti-linux-distros>` or an external source) all JavaScript testing should target:
|
|
|
|
Ref: https://nodejs.org/en/about/previous-releases/
|
|
|
|
* Node.js 20
|
|
|
|
More details on Javascript requirements can be found in :ref:`pti-javascript`.
|