Skip to content

ci: require python 3.11 and test 3.11 to 3.14#293

Merged
bhcopeland merged 9 commits into
kernelci:masterfrom
roxell:ci-drop-eol-python
Jun 26, 2026
Merged

ci: require python 3.11 and test 3.11 to 3.14#293
bhcopeland merged 9 commits into
kernelci:masterfrom
roxell:ci-drop-eol-python

Conversation

@roxell

@roxell roxell commented Jun 24, 2026

Copy link
Copy Markdown
Collaborator

Clean up the python versions we support and test.
Set the minimum requirement to python 3.11.

roxell added 8 commits June 24, 2026 13:12
The minimum was python 3.6. That version, and everything up to 3.9,
is end of life now.

Set the minimum to 3.11 in pyproject.toml, debian/control and
tuxmake.spec so the three files agree on the supported version.

Signed-off-by: Anders Roxell <anders.roxell@linaro.org>
The matrix ran unit and integration tests on python 3.6 to 3.11.
Python 3.6 to 3.9 are end of life, and 3.10 reaches end of life in
October 2026. The newer 3.12 was not tested at all.

Test only 3.11 and 3.12 now, on both amd64 and arm64. 3.12 uses the
existing ci-ubuntu-24.04 image.

Repoint integration-docker to the 3.11 job since the 3.8 job is gone.

Signed-off-by: Anders Roxell <anders.roxell@linaro.org>
After dropping the EOL python jobs, four CI images are no longer used
by any job: ci-debian-10, ci-ubuntu-18.04, ci-ubuntu-20.04 and
ci-ubuntu-22.04.

Remove their build and publish jobs so we stop building images nothing
uses. Keep ci-debian-11, it is still the default image and runs the
docs build.

Signed-off-by: Anders Roxell <anders.roxell@linaro.org>
Add a Debian 13 (trixie) CI image. Trixie ships python 3.13, so this
gives us an image to run the 3.13 tests on.

The image is not used yet. The next commit adds it to the test matrix.

Signed-off-by: Anders Roxell <anders.roxell@linaro.org>
Add python 3.13 to the unit and integration matrix, on both amd64 and
arm64. It runs on the new ci-debian-13 image.

The matrix now covers 3.11, 3.12 and 3.13, one image per version.

Signed-off-by: Anders Roxell <anders.roxell@linaro.org>
Add an Ubuntu 26.04 LTS CI image. It ships python 3.14, so this gives
us an image to run the 3.14 tests on.

The image is not used yet. The next commit adds it to the test matrix.

Signed-off-by: Anders Roxell <anders.roxell@linaro.org>
Add python 3.14 to the unit and integration matrix, on both amd64 and
arm64. It runs on the new ci-ubuntu-26.04 image.

The matrix now covers 3.11, 3.12, 3.13 and 3.14, one image per version.

Signed-off-by: Anders Roxell <anders.roxell@linaro.org>
black 26 puts the two context managers in the with-statement on
their own lines, wrapped in parentheses. This form needs python 3.10+,
which is fine now that the minimum is 3.11.

No behaviour change, formatting only.

Signed-off-by: Anders Roxell <anders.roxell@linaro.org>
@roxell roxell force-pushed the ci-drop-eol-python branch 2 times, most recently from de12a64 to c99838c Compare June 24, 2026 17:56
The github workflow had no python version matrix. It ran the tests in
a single gitlab image (ci-debian-12, python 3.11).

Use actions/setup-python with a 3.11 to 3.14 matrix instead, so we no
longer depend on gitlab-built images.

There is no container now, so install the build tools with apt. The
integration tests also need the cross compilers, clang, lld and socat.

Running outside a container also exposed two tests the container hid.
Make the home fixture hermetic so the config tests do not read from
outside the test dir, and skip the offline test where tuxmake cannot
block network access.

Signed-off-by: Anders Roxell <anders.roxell@linaro.org>
@roxell roxell force-pushed the ci-drop-eol-python branch from c99838c to 470959d Compare June 24, 2026 18:11
@bhcopeland bhcopeland merged commit 6159d66 into kernelci:master Jun 26, 2026
29 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants