From c3834e675fde19689543d3a99767555ffa3dcb2d Mon Sep 17 00:00:00 2001 From: Ghanshyam Mann Date: Mon, 4 May 2020 14:11:40 -0500 Subject: [PATCH] Moving functional jobs to Victoria testing runtime As per Victoria testing runtime[1], we need to tests py3.6, py3.7, and py3.8. - py3.7 is being tested with integration jobs. - py3.6 and py3.8 are tested with unit test jobs. Nova functional tests are testing py3.6 which can be moved to the latest python available in this cycle which is 3.8. We do not need to run functional or integration tests on each supported python version. Testing them on the latest python version is enough. Coverage of all supported python version is achieved via unit tests job. [1] https://governance.openstack.org/tc/reference/runtimes/victoria.html Change-Id: I1d6a2986fcb0435cfabdd104d202b65329909d2b --- .zuul.yaml | 39 +++++++-------------------------------- setup.cfg | 1 + tox.ini | 9 ++++++++- 3 files changed, 16 insertions(+), 33 deletions(-) diff --git a/.zuul.yaml b/.zuul.yaml index 7916c295dd..9fc2252cc7 100644 --- a/.zuul.yaml +++ b/.zuul.yaml @@ -30,12 +30,12 @@ - ^tox.ini$ - job: - name: nova-tox-functional-py36 - parent: openstack-tox-functional-py36 + name: nova-tox-functional-py38 + parent: openstack-tox-functional-py38 description: | Run tox-based functional tests for the OpenStack Nova project - under cPython version 3.6 with Nova specific irrelevant-files list. - Uses tox with the ``functional-py36`` environment. + under cPython version 3.8 with Nova specific irrelevant-files list. + Uses tox with the ``functional-py38`` environment. This job also provides a parent for other projects to run the nova functional tests on their own changes. @@ -53,29 +53,7 @@ # explicitly stating the work dir makes this job reusable by other # projects zuul_work_dir: src/opendev.org/openstack/nova - bindep_profile: test py36 - timeout: 3600 - -- job: - name: nova-tox-functional-py37 - parent: openstack-tox-functional-py37 - description: | - Run tox-based functional tests for the OpenStack Nova project - under cPython version 3.7 with Nova specific irrelevant-files list. - Uses tox with the ``functional-py37`` environment. - - This job also provides a parent for other projects to run the nova - functional tests on their own changes. - required-projects: - # including nova here makes this job reusable by other projects - - openstack/nova - - openstack/placement - irrelevant-files: *functional-irrelevant-files - vars: - # explicitly stating the work dir makes this job reusable by other - # projects - zuul_work_dir: src/opendev.org/openstack/nova - bindep_profile: test py37 + bindep_profile: test py38 timeout: 3600 - job: @@ -377,7 +355,7 @@ - nova-lvm - nova-multi-cell - nova-next - - nova-tox-functional-py36 + - nova-tox-functional-py38 - tempest-integrated-compute: # NOTE(gmann): Policies changes do not need to run all the # integration test jobs. Running only tempest and grenade @@ -410,7 +388,7 @@ jobs: - nova-grenade-multinode - nova-live-migration - - nova-tox-functional-py36 + - nova-tox-functional-py38 - nova-multi-cell - nova-next - tempest-integrated-compute: @@ -452,9 +430,6 @@ irrelevant-files: *dsvm-irrelevant-files - os-vif-ovs: irrelevant-files: *dsvm-irrelevant-files - # NOTE(mriedem): Consider moving nova-tox-functional-py37 to the - # check and gate queues once it's stable (like openstack-python37-jobs) - - nova-tox-functional-py37 - devstack-platform-fedora-latest: irrelevant-files: *dsvm-irrelevant-files - devstack-platform-fedora-latest-virt-preview: diff --git a/setup.cfg b/setup.cfg index 928b36e6b9..c89f1999a4 100644 --- a/setup.cfg +++ b/setup.cfg @@ -17,6 +17,7 @@ classifier = Programming Language :: Python :: 3 Programming Language :: Python :: 3.6 Programming Language :: Python :: 3.7 + Programming Language :: Python :: 3.8 Programming Language :: Python :: 3 :: Only Programming Language :: Python :: Implementation :: CPython diff --git a/tox.ini b/tox.ini index df9ffbc3b7..214a8c75f5 100644 --- a/tox.ini +++ b/tox.ini @@ -1,6 +1,6 @@ [tox] minversion = 3.1.1 -envlist = py37,functional,pep8 +envlist = py38,functional,pep8 # Automatic envs (pyXX) will only use the python version appropriate to that # env and ignore basepython inherited from [testenv] if we set # ignore_basepython_conflict. @@ -102,6 +102,13 @@ deps = {[testenv:functional]deps} commands = {[testenv:functional]commands} +[testenv:functional-py38] +description = + Run functional tests using python3.8. +deps = {[testenv:functional]deps} +commands = + {[testenv:functional]commands} + [testenv:api-samples] setenv = {[testenv]setenv}