From 93f882c04cbc5a81e2182134e048a9a0e044a7ab Mon Sep 17 00:00:00 2001 From: Tristan Cacqueray Date: Tue, 21 Jul 2026 07:52:19 +0000 Subject: [PATCH] .zuul: Unbreak the CI on Fedora Rawhide hosts The default Python stack in Fedora Rawhide was updated from version 3.14 to 3.15 [1], and OpenSSL 4.0 was introduced [2]. As a result of this combination, the PROTOCOL_TLSv1 attribute disappeared from Python's ssl module [3]. This prevents Zuul from working with Fedora Rawhide hosts, because of this Ansible error: TASK [add-build-sshkey : Enable access via build key on all nodes] *** An exception occurred during task execution. To see the full traceback, use -vvv. The error was: AttributeError: module 'ssl' has no attribute 'PROTOCOL_TLSv1'. Did you mean '.PROTOCOL_TLS' instead of '.PROTOCOL_TLSv1'? The use of ssl.PROTOCOL_TLSv1 was removed from ansible-core 2.17.0 [4], which became available in Ansible 10 [5,6]; and since Zuul 13.0.0, the default Ansible version is 9, and version 11 can be optionally used [7]. Therefore, explicitly selecting Ansible 11 resolves this breakage when the combination of Python 3.15 and OpenSSL 4.0 are used. [1] https://fedoraproject.org/wiki/Changes/Python3.15 [2] https://fedoraproject.org/wiki/Changes/OpenSSL40 [3] CPython commit 3364e7e62fa24d0e https://github.com/python/cpython/commit/3364e7e62fa24d0e https://github.com/python/cpython/pull/146217 https://github.com/python/cpython/issues/146207 [4] ansible-core commit 92d2c66db2eecd0f https://github.com/ansible/ansible/commit/92d2c66db2eecd0f https://github.com/ansible/ansible/pull/81880 [5] https://docs.ansible.com/projects/ansible/latest/reference_appendices/release_and_maintenance.html [6] https://github.com/ansible-community/ansible-build-data/blob/main/10/CHANGELOG-v10.md [7] https://zuul-ci.org/docs/zuul/latest/releasenotes.html https://github.com/containers/toolbox/pull/1824 Signed-off-by: Tristan Cacqueray --- .zuul.yaml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/.zuul.yaml b/.zuul.yaml index 9cee90813..e6980f0c5 100644 --- a/.zuul.yaml +++ b/.zuul.yaml @@ -18,6 +18,7 @@ - job: name: unit-test description: Run Toolbx's unit tests declared in Meson + ansible-version: 11 timeout: 1800 nodeset: nodes: @@ -40,6 +41,7 @@ - job: name: unit-test-restricted description: Run Toolbx's unit tests declared in Meson in a restricted build environment + ansible-version: 11 timeout: 1800 nodeset: nodes: @@ -51,6 +53,7 @@ - job: name: system-test-fedora-rawhide-commands-options description: Run Toolbx's commands-options system tests in Fedora Rawhide + ansible-version: 11 timeout: 7200 nodeset: nodes: @@ -62,6 +65,7 @@ - job: name: system-test-fedora-rawhide-runtime-environment-arch-fedora description: Run Toolbx's (arch-fedora,runtime-environment) system tests in Fedora Rawhide + ansible-version: 11 timeout: 7200 nodeset: nodes: @@ -73,6 +77,7 @@ - job: name: system-test-fedora-rawhide-runtime-environment-ubuntu description: Run Toolbx's (runtime-environment,ubuntu) system tests in Fedora Rawhide + ansible-version: 11 timeout: 7200 nodeset: nodes: