Browse Source

[ussuri][goal] Drop python 2.7 support and testing

OpenStack is dropping the py2.7 support in ussuri cycle.

Tempest is ready with python 3 and ok to drop the
python 2.7 support. Last Tempest version officially supported
for py2.7 is 23.0.0.

Now onwards, Tempest will test all stable branch with py3 jobs.
tempest-full and other py2 version of jobs definition are kept
for stable branch gate.

Complete discussion & schedule can be found in
- http://lists.openstack.org/pipermail/openstack-discuss/2019-October/010142.html
- https://etherpad.openstack.org/p/drop-python2-support

Ussuri Communtiy-wide goal:
https://governance.openstack.org/tc/goals/selected/ussuri/drop-py27.html

Change-Id: I75868d5c9b6630fe78958ff89e58a0aced09a6b3
changes/96/704096/7
Ghanshyam Mann 3 weeks ago
parent
commit
551e8d7a59
7 changed files with 32 additions and 53 deletions
  1. +18
    -37
      .zuul.yaml
  2. +1
    -2
      doc/requirements.txt
  3. +3
    -3
      doc/source/supported_version.rst
  4. +6
    -0
      releasenotes/notes/drop-py-2-7-730baf411876d5d8.yaml
  5. +3
    -2
      setup.cfg
  6. +0
    -8
      setup.py
  7. +1
    -1
      tox.ini

+ 18
- 37
.zuul.yaml View File

@@ -100,6 +100,7 @@
devstack_localrc:
ENABLE_FILE_INJECTION: true
ENABLE_VOLUME_MULTIATTACH: true
USE_PYTHON3: False
devstack_services:
# NOTE(mriedem): Disable the cinder-backup service from tempest-full
# since tempest-full is in the integrated-gate project template but
@@ -138,6 +139,9 @@
- opendev.org/openstack/oslo.utils
- opendev.org/openstack/oslo.versionedobjects
- opendev.org/openstack/oslo.vmware
vars:
devstack_localrc:
USE_PYTHON3: True

- job:
name: tempest-full-parallel
@@ -146,11 +150,13 @@
branches:
- master
description: |
Base integration test with Neutron networking and py27.
Base integration test with Neutron networking.
It includes all scenarios as it was in the past.
This job runs all scenario tests in parallel!
vars:
tox_envlist: full-parallel
devstack_localrc:
USE_PYTHON3: True

- job:
name: tempest-full-py3
@@ -345,6 +351,13 @@
- stable/pike
- stable/queens
- stable/rocky
vars:
devstack_localrc:
USE_PYTHON3: False
group-vars:
subnode:
devstack_localrc:
USE_PYTHON3: False

- job:
name: tempest-multinode-full-py3
@@ -425,32 +438,16 @@
devstack_localrc:
USE_PYTHON3: true

- job:
name: tempest-full-train
parent: tempest-full
override-checkout: stable/train

- job:
name: tempest-full-train-py3
parent: tempest-full-py3
override-checkout: stable/train

- job:
name: tempest-full-stein
parent: tempest-full
override-checkout: stable/stein

- job:
name: tempest-full-stein-py3
parent: tempest-full-py3
override-checkout: stable/stein

- job:
name: tempest-full-rocky
parent: tempest-full
nodeset: openstack-single-node-xenial
override-checkout: stable/rocky

- job:
name: tempest-full-rocky-py3
parent: tempest-full-py3
@@ -511,12 +508,13 @@
name: tempest-pg-full
parent: tempest-full
description: |
Base integration test with Neutron networking and py27 and PostgreSQL.
Base integration test with Neutron networking and PostgreSQL.
Former name for this job was legacy-tempest-dsvm-neutron-pg-full.
vars:
devstack_localrc:
ENABLE_FILE_INJECTION: true
DATABASE_TYPE: postgresql
USE_PYTHON3: True

- project-template:
name: integrated-gate-networking
@@ -600,10 +598,9 @@
- project:
templates:
- check-requirements
- integrated-gate
- integrated-gate-py3
- openstack-cover-jobs
- openstack-python3-train-jobs
- openstack-python3-ussuri-jobs
- publish-openstack-docs-pti
- release-notes-jobs-python3
check:
@@ -639,22 +636,13 @@
- tempest-full-py3-ipv6:
voting: false
irrelevant-files: *tempest-irrelevant-files
- tempest-full-train:
irrelevant-files: *tempest-irrelevant-files
- tempest-full-train-py3:
irrelevant-files: *tempest-irrelevant-files
- tempest-full-stein:
irrelevant-files: *tempest-irrelevant-files
- tempest-full-stein-py3:
irrelevant-files: *tempest-irrelevant-files
- tempest-full-rocky:
irrelevant-files: *tempest-irrelevant-files
voting: false
- tempest-full-rocky-py3:
irrelevant-files: *tempest-irrelevant-files
voting: false
- tempest-multinode-full:
irrelevant-files: *tempest-irrelevant-files
- tempest-multinode-full-py3:
irrelevant-files: *tempest-irrelevant-files
- tempest-tox-plugin-sanity-check:
@@ -673,8 +661,6 @@
# tools/ is not here since this relies on a script in tools/.
- tempest-ipv6-only:
irrelevant-files: *tempest-irrelevant-files-2
- tempest-slow:
irrelevant-files: *tempest-irrelevant-files
- tempest-slow-py3:
irrelevant-files: *tempest-irrelevant-files
- nova-live-migration:
@@ -701,8 +687,6 @@
irrelevant-files: *tempest-irrelevant-files
- neutron-tempest-dvr:
irrelevant-files: *tempest-irrelevant-files
- tempest-full:
irrelevant-files: *tempest-irrelevant-files
- interop-tempest-consistency:
irrelevant-files: *tempest-irrelevant-files
- tempest-full-test-account-py3:
@@ -719,7 +703,7 @@
irrelevant-files: *tempest-irrelevant-files
- neutron-grenade-multinode:
irrelevant-files: *tempest-irrelevant-files
- tempest-full:
- tempest-full-py3:
irrelevant-files: *tempest-irrelevant-files
- grenade-py3:
irrelevant-files: *tempest-irrelevant-files
@@ -747,11 +731,8 @@
irrelevant-files: *tempest-irrelevant-files
periodic-stable:
jobs:
- tempest-full-train
- tempest-full-train-py3
- tempest-full-stein
- tempest-full-stein-py3
- tempest-full-rocky
- tempest-full-rocky-py3
periodic:
jobs:


+ 1
- 2
doc/requirements.txt View File

@@ -3,6 +3,5 @@
# process, which may cause wedges in the gate later.
openstackdocstheme>=1.20.0 # Apache-2.0
reno>=2.5.0 # Apache-2.0
sphinx!=1.6.6,!=1.6.7,>=1.6.2,<2.0.0;python_version=='2.7' # BSD
sphinx!=1.6.6,!=1.6.7,!=2.1.0,>=1.6.2;python_version>='3.4' # BSD
sphinx!=1.6.6,!=1.6.7,!=2.1.0,>=1.6.2 # BSD
sphinxcontrib-svg2pdfconverter>=0.1.0 # BSD

+ 3
- 3
doc/source/supported_version.rst View File

@@ -1,7 +1,7 @@
Supported OpenStack Releases and Python Versions
================================================

This Document list the officially supported OpenStack releases
This document lists the officially supported OpenStack releases
and python versions by Tempest.

Compatible OpenStack Releases
@@ -24,13 +24,13 @@ For example: OpenStack Stein: Tempest 20.0.0
* https://releases.openstack.org/stein/index.html#stein-tempest

How to use Tempest tag on Extended Maintenance stable branch:
* https://review.opendev.org/#/c/681950/

* https://review.opendev.org/#/c/705098/

Supported Python Versions
-------------------------

Tempest master supports the below python versions:

* Python 2.7
* Python 3.6
* Python 3.7

+ 6
- 0
releasenotes/notes/drop-py-2-7-730baf411876d5d8.yaml View File

@@ -0,0 +1,6 @@
---
upgrade:
- |
Python 2.7 support has been dropped. Last release of Tempest
to support python 2.7 is Temepst 23.0.0. The minimum version of Python now
supported by Tempest is Python 3.6.

+ 3
- 2
setup.cfg View File

@@ -6,6 +6,7 @@ description-file =
author = OpenStack
author-email = openstack-discuss@lists.openstack.org
home-page = https://docs.openstack.org/tempest/latest/
requires-python = >=3.6
classifier =
Intended Audience :: Information Technology
Intended Audience :: System Administrators
@@ -13,11 +14,11 @@ classifier =
License :: OSI Approved :: Apache Software License
Operating System :: POSIX :: Linux
Programming Language :: Python
Programming Language :: Python :: 2
Programming Language :: Python :: 2.7
Programming Language :: Python :: 3
Programming Language :: Python :: 3.6
Programming Language :: Python :: 3.7
Programming Language :: Python :: 3 :: Only
Programming Language :: Python :: Implementation :: CPython

[files]
packages =


+ 0
- 8
setup.py View File

@@ -16,14 +16,6 @@
# THIS FILE IS MANAGED BY THE GLOBAL REQUIREMENTS REPO - DO NOT EDIT
import setuptools

# In python < 2.7.4, a lazy loading of package `pbr` will break
# setuptools if some other modules registered functions in `atexit`.
# solution from: http://bugs.python.org/issue15881#msg170215
try:
import multiprocessing # noqa
except ImportError:
pass

setuptools.setup(
setup_requires=['pbr>=2.0.0'],
pbr=True)

+ 1
- 1
tox.ini View File

@@ -1,5 +1,5 @@
[tox]
envlist = pep8,py36,py37,py27,bashate,pip-check-reqs
envlist = pep8,py36,py37,bashate,pip-check-reqs
minversion = 3.1.1
skipsdist = True
ignore_basepython_conflict = True


Loading…
Cancel
Save