From 1b9d738d894c43dc5ca19495c45e4c30b0bfa49a Mon Sep 17 00:00:00 2001 From: "Dr. Jens Harbott" Date: Tue, 5 Nov 2024 10:36:44 +0100 Subject: [PATCH] Switch cross tests to python3.12 It makes sense to run the cross tests with the latest available python version, which is python 3.12 for this cycle. Also make the reqs checks for py3.12 voting and add an experimental requirements-tox-py312-check-uc-no-wheels job. Change-Id: I4f4abb7a71beff8c107bf8b4204c428928f15ab9 --- .zuul.d/cross-jobs.yaml | 128 ++++++++++++++++++++-------------------- .zuul.d/jobs.yaml | 10 ++++ .zuul.d/project.yaml | 77 ++++++++++++------------ 3 files changed, 113 insertions(+), 102 deletions(-) diff --git a/.zuul.d/cross-jobs.yaml b/.zuul.d/cross-jobs.yaml index 9460e34955..93109e2eeb 100644 --- a/.zuul.d/cross-jobs.yaml +++ b/.zuul.d/cross-jobs.yaml @@ -13,7 +13,7 @@ .. zuul:jobvar:: tox_envlist Use the specified tox environments (``ALL`` selects all). - nodeset: debian-bookworm + nodeset: ubuntu-noble vars: zuul_work_dir: "{{ (zuul.projects.values() | selectattr('required') | selectattr('name', 'match', '^(?!openstack/requirements)') | list)[0].src_dir }}" tox_constraints_file: "{{ ansible_user_dir }}/{{ zuul.projects['opendev.org/openstack/requirements'].src_dir }}/upper-constraints.txt" @@ -22,68 +22,68 @@ - .zuul.d/cross-jobs.yaml - job: - name: cross-aodh-py311 + name: cross-aodh-py312 parent: requirements-cross-test - description: Run cross-project tests on aodh with py311. + description: Run cross-project tests on aodh with py312. required-projects: openstack/aodh vars: - tox_envlist: py311 + tox_envlist: py312 - job: - name: cross-barbican-py311 + name: cross-barbican-py312 parent: requirements-cross-test - description: Run cross-project tests on barbican with py311. + description: Run cross-project tests on barbican with py312. required-projects: openstack/barbican vars: - tox_envlist: py311 + tox_envlist: py312 - job: - name: cross-ceilometer-py311 + name: cross-ceilometer-py312 parent: requirements-cross-test - description: Run cross-project tests on ceilometer with py311. + description: Run cross-project tests on ceilometer with py312. required-projects: openstack/ceilometer vars: - tox_envlist: py311 + tox_envlist: py312 - job: - name: cross-cinder-py311 + name: cross-cinder-py312 parent: requirements-cross-test - description: Run cross-project tests on cinder with py311. + description: Run cross-project tests on cinder with py312. required-projects: openstack/cinder vars: - tox_envlist: py311 + tox_envlist: py312 - job: - name: cross-designate-py311 + name: cross-designate-py312 parent: requirements-cross-test - description: Run cross-project tests on designate with py311. + description: Run cross-project tests on designate with py312. required-projects: openstack/designate vars: - tox_envlist: py311 + tox_envlist: py312 - job: - name: cross-glance-py311 + name: cross-glance-py312 parent: requirements-cross-test - description: Run cross-project tests on glance with py311. + description: Run cross-project tests on glance with py312. required-projects: openstack/glance vars: - tox_envlist: py311 + tox_envlist: py312 - job: - name: cross-heat-py311 + name: cross-heat-py312 parent: requirements-cross-test - description: Run cross-project tests on heat with py311. + description: Run cross-project tests on heat with py312. required-projects: openstack/heat vars: - tox_envlist: py311 + tox_envlist: py312 - job: - name: cross-horizon-py311 + name: cross-horizon-py312 parent: requirements-cross-test - description: Run cross-project tests on horizon with py311. + description: Run cross-project tests on horizon with py312. required-projects: openstack/horizon vars: - tox_envlist: py311 + tox_envlist: py312 - job: name: cross-horizon-npm @@ -101,70 +101,70 @@ - .zuul.d/cross-jobs.yaml - job: - name: cross-keystone-py311 + name: cross-keystone-py312 parent: requirements-cross-test - description: Run cross-project tests on keystone with py311. + description: Run cross-project tests on keystone with py312. required-projects: openstack/keystone timeout: 3600 vars: - tox_envlist: py311 + tox_envlist: py312 - job: - name: cross-kuryr-py311 + name: cross-kuryr-py312 parent: requirements-cross-test - description: Run cross-project tests on kuryr-kubernetes with py311. + description: Run cross-project tests on kuryr-kubernetes with py312. required-projects: openstack/kuryr-kubernetes vars: - tox_envlist: py311 + tox_envlist: py312 - job: - name: cross-ironic-py311 + name: cross-ironic-py312 parent: requirements-cross-test - description: Run cross-project tests on ironic with py311. + description: Run cross-project tests on ironic with py312. required-projects: openstack/ironic vars: - tox_envlist: py311 + tox_envlist: py312 - job: - name: cross-magnum-py311 + name: cross-magnum-py312 parent: requirements-cross-test - description: Run cross-project tests on magnum with py311. + description: Run cross-project tests on magnum with py312. required-projects: openstack/magnum vars: - tox_envlist: py311 + tox_envlist: py312 - job: - name: cross-manila-py311 + name: cross-manila-py312 parent: requirements-cross-test - description: Run cross-project tests on manila with py311. + description: Run cross-project tests on manila with py312. required-projects: openstack/manila vars: - tox_envlist: py311 + tox_envlist: py312 - job: - name: cross-masakari-py311 + name: cross-masakari-py312 parent: requirements-cross-test - description: Run cross-project tests on masakari with py311. + description: Run cross-project tests on masakari with py312. required-projects: openstack/masakari vars: - tox_envlist: py311 + tox_envlist: py312 - job: - name: cross-mistral-py311 + name: cross-mistral-py312 parent: requirements-cross-test - description: Run cross-project tests on mistral with py311. + description: Run cross-project tests on mistral with py312. required-projects: openstack/mistral vars: - tox_envlist: py311 + tox_envlist: py312 - job: - name: cross-neutron-py311 + name: cross-neutron-py312 parent: requirements-cross-test - description: Run cross-project tests on neutron with py311. + description: Run cross-project tests on neutron with py312. required-projects: openstack/neutron timeout: 3600 vars: - tox_envlist: py311 + tox_envlist: py312 - job: name: cross-nova-functional @@ -175,12 +175,12 @@ tox_envlist: functional - job: - name: cross-placement-functional-py311 + name: cross-placement-functional-py312 parent: requirements-cross-test - description: Run cross-project functional tests on placement with py311. + description: Run cross-project functional tests on placement with py312. required-projects: openstack/placement vars: - tox_envlist: functional-py311 + tox_envlist: functional-py312 - job: name: cross-nova-pep8 @@ -191,20 +191,20 @@ tox_envlist: pep8 - job: - name: cross-nova-py311 + name: cross-nova-py312 parent: requirements-cross-test - description: Run cross-project tests on nova with py311. + description: Run cross-project tests on nova with py312. required-projects: openstack/nova vars: - tox_envlist: py311 + tox_envlist: py312 - job: - name: cross-placement-py311 + name: cross-placement-py312 parent: requirements-cross-test - description: Run cross-project tests on placement with py311. + description: Run cross-project tests on placement with py312. required-projects: openstack/placement vars: - tox_envlist: py311 + tox_envlist: py312 - job: name: cross-osvif-py3 @@ -215,20 +215,20 @@ tox_envlist: py3 - job: - name: cross-octavia-py311 + name: cross-octavia-py312 parent: requirements-cross-test - description: Run cross-project tests on octavia with py311. + description: Run cross-project tests on octavia with py312. required-projects: openstack/octavia vars: - tox_envlist: py311 + tox_envlist: py312 - job: - name: cross-swift-py311 + name: cross-swift-py312 parent: requirements-cross-test - description: Run cross-project tests on swift with py311. + description: Run cross-project tests on swift with py312. required-projects: openstack/swift vars: - tox_envlist: py311 + tox_envlist: py312 - job: name: cross-osc-tox-docs diff --git a/.zuul.d/jobs.yaml b/.zuul.d/jobs.yaml index 987220449f..51415b5c3a 100644 --- a/.zuul.d/jobs.yaml +++ b/.zuul.d/jobs.yaml @@ -83,6 +83,16 @@ Does not use wheel mirror. pre-run: playbooks/drop-wheel-mirror.yaml +- job: + name: requirements-tox-py312-check-uc-no-wheels + parent: requirements-tox-py312-check-uc + description: | + Run test for requirements project. + + Uses tox with the ``py312-check-uc`` environment. + Does not use wheel mirror. + pre-run: playbooks/drop-wheel-mirror.yaml + - job: name: requirements-tox-validate-projects parent: openstack-tox diff --git a/.zuul.d/project.yaml b/.zuul.d/project.yaml index 132ef401ae..b566fa8a0d 100644 --- a/.zuul.d/project.yaml +++ b/.zuul.d/project.yaml @@ -19,38 +19,37 @@ - requirements-tox-py39-check-uc - requirements-tox-py310-check-uc - requirements-tox-py311-check-uc - - requirements-tox-py312-check-uc: - voting: false + - requirements-tox-py312-check-uc - requirements-tox-validate-projects: voting: false - - cross-aodh-py311 - - cross-barbican-py311 - - cross-ceilometer-py311 - - cross-cinder-py311 - - cross-designate-py311 - - cross-glance-py311 - - cross-heat-py311 - - cross-horizon-py311 + - cross-aodh-py312 + - cross-barbican-py312 + - cross-ceilometer-py312 + - cross-cinder-py312 + - cross-designate-py312 + - cross-glance-py312 + - cross-heat-py312 + - cross-horizon-py312 - cross-horizon-npm - - cross-ironic-py311 - - cross-keystone-py311 - - cross-kuryr-py311 - - cross-manila-py311 - - cross-magnum-py311 - - cross-masakari-py311: + - cross-ironic-py312 + - cross-keystone-py312 + - cross-kuryr-py312 + - cross-manila-py312 + - cross-magnum-py312 + - cross-masakari-py312: voting: false - - cross-mistral-py311: + - cross-mistral-py312: voting: false - - cross-neutron-py311 + - cross-neutron-py312 - cross-nova-pep8 - - cross-nova-py311 - - cross-placement-py311 + - cross-nova-py312 + - cross-placement-py312 - cross-osvif-py3 - cross-nova-functional - - cross-placement-functional-py311 - - cross-octavia-py311 + - cross-placement-functional-py312 + - cross-octavia-py312 - cross-osc-tox-docs - - cross-swift-py311 + - cross-swift-py312 - openstacksdk-functional-devstack - tempest-full-py3: irrelevant-files: @@ -84,28 +83,29 @@ - requirements-tox-py39-check-uc - requirements-tox-py310-check-uc - requirements-tox-py311-check-uc - - cross-cinder-py311 - - cross-designate-py311 - - cross-glance-py311 - - cross-heat-py311 - - cross-horizon-py311 + - requirements-tox-py312-check-uc + - cross-cinder-py312 + - cross-designate-py312 + - cross-glance-py312 + - cross-heat-py312 + - cross-horizon-py312 - cross-horizon-npm - - cross-ironic-py311 - - cross-keystone-py311 - - cross-kuryr-py311 - - cross-manila-py311 - - cross-neutron-py311 + - cross-ironic-py312 + - cross-keystone-py312 + - cross-kuryr-py312 + - cross-manila-py312 + - cross-neutron-py312 - cross-nova-pep8 - - cross-nova-py311: + - cross-nova-py312: files: ^upper-constraints.txt$ - - cross-placement-py311: + - cross-placement-py312: files: ^upper-constraints.txt$ - cross-osvif-py3 - cross-nova-functional - - cross-placement-functional-py311 - - cross-octavia-py311 + - cross-placement-functional-py312 + - cross-octavia-py312 - cross-osc-tox-docs - - cross-swift-py311 + - cross-swift-py312 - openstacksdk-functional-devstack - tempest-full-py3: irrelevant-files: @@ -119,6 +119,7 @@ - requirements-tox-py39-check-uc-no-wheels - requirements-tox-py310-check-uc-no-wheels - requirements-tox-py311-check-uc-no-wheels + - requirements-tox-py312-check-uc-no-wheels - tempest-integrated-storage - tempest-pg-full: irrelevant-files: