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

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

Congress is ready with python 3 and ok to drop the
python 2.7 support.

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

Depends-On: https://review.opendev.org/#/c/693631/
Change-Id: I23fcb01265b734c0a87f5ad81b25a1eac179eb06
This commit is contained in:
Ghanshyam Mann 2019-11-15 02:54:10 +00:00
parent c0b105fe34
commit 49217bcec2
5 changed files with 12 additions and 67 deletions

View File

@ -43,12 +43,6 @@
tempest: true tempest: true
neutron-qos: true neutron-qos: true
horizon: false horizon: false
# swift disabled for py3
s-proxy: false
s-object: false
s-container: false
s-account: false
c-bak: false # requires swift
tempest_concurrency: 1 tempest_concurrency: 1
tox_envlist: all tox_envlist: all
tempest_test_regex: congress_tempest_plugin.* tempest_test_regex: congress_tempest_plugin.*
@ -60,6 +54,7 @@
CONGRESS_EXPOSE_ENCRYPTION_KEY_FOR_TEST: true CONGRESS_EXPOSE_ENCRYPTION_KEY_FOR_TEST: true
ENABLE_CONGRESS_Z3: true ENABLE_CONGRESS_Z3: true
USE_Z3_RELEASE: 4.7.1 USE_Z3_RELEASE: 4.7.1
USE_PYTHON3: True
- job: - job:
name: congress-tempest-ipv6-only name: congress-tempest-ipv6-only
@ -73,22 +68,6 @@
<<: *base_vars <<: *base_vars
tempest_test_regex: '(^congress_tempest_plugin.*)(\[.*\bsmoke\b.*\])' tempest_test_regex: '(^congress_tempest_plugin.*)(\[.*\bsmoke\b.*\])'
- job:
name: congress-tempest-py2
parent: congress-tempest-base
vars:
devstack_plugins:
aodh: https://opendev.org/openstack/aodh
mistral: https://opendev.org/openstack/mistral
monasca-api: https://opendev.org/openstack/monasca-api
murano: https://opendev.org/openstack/murano
devstack_services:
s-proxy: true
s-object: true
s-container: true
s-account: true
c-bak: true
- job: - job:
name: congress-tempest-py3 name: congress-tempest-py3
parent: congress-tempest-base parent: congress-tempest-base
@ -123,12 +102,6 @@
mysql: false mysql: false
postgresql: true postgresql: true
- job:
name: congress-tempest-py2-mysql
parent: congress-tempest-py2
vars:
database: mysql
- job: - job:
name: congress-tempest-py3-mysql name: congress-tempest-py3-mysql
parent: congress-tempest-py3 parent: congress-tempest-py3
@ -136,7 +109,7 @@
database: mysql database: mysql
- job: - job:
name: congress-tempest-py2-JsonIngester name: congress-tempest-py3-JsonIngester
parent: congress-tempest-base parent: congress-tempest-base
voting: false voting: false
vars: vars:
@ -144,15 +117,7 @@
ENABLE_CONGRESS_JSON: true ENABLE_CONGRESS_JSON: true
- job: - job:
name: congress-tempest-py3-JsonIngester name: congress-tempest-py3-postgresql
parent: congress-tempest-py2-JsonIngester
voting: false
vars:
devstack_localrc:
USE_PYTHON3: true
- job:
name: congress-tempest-py2-postgresql
parent: congress-tempest-base parent: congress-tempest-base
voting: false voting: false
vars: vars:
@ -160,30 +125,19 @@
mysql: false mysql: false
postgresql: true postgresql: true
- job:
name: congress-tempest-py3-postgresql
parent: congress-tempest-py2-postgresql
voting: false
vars:
devstack_localrc:
USE_PYTHON3: true
- project: - project:
templates: templates:
- check-requirements - check-requirements
- openstack-cover-jobs - openstack-cover-jobs
- openstack-lower-constraints-jobs - openstack-lower-constraints-jobs
- openstack-python-jobs - openstack-python3-ussuri-jobs
- openstack-python3-train-jobs
- release-notes-jobs-python3 - release-notes-jobs-python3
- publish-openstack-docs-pti - publish-openstack-docs-pti
- periodic-stable-jobs - periodic-stable-jobs
check: check:
jobs: jobs:
- congress-tempest-py2-mysql
- congress-tempest-py3-mysql - congress-tempest-py3-mysql
- congress-tempest-replicated-postgresql - congress-tempest-replicated-postgresql
- congress-tempest-py2-JsonIngester
- congress-tempest-py3-JsonIngester - congress-tempest-py3-JsonIngester
- congress-tempest-ipv6-only - congress-tempest-ipv6-only
# Note: the above jobs most likely provides sufficient coverage # Note: the above jobs most likely provides sufficient coverage
@ -205,6 +159,5 @@
gate: gate:
queue: congress queue: congress
jobs: jobs:
- congress-tempest-py2-mysql
- congress-tempest-py3-mysql - congress-tempest-py3-mysql
- congress-tempest-ipv6-only - congress-tempest-ipv6-only

View File

@ -4,6 +4,5 @@
openstackdocstheme>=1.18.1 # Apache-2.0 openstackdocstheme>=1.18.1 # Apache-2.0
reno>=2.5.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,>=1.6.2;python_version>='3.4' # BSD sphinx!=1.6.6,!=1.6.7,>=1.6.2;python_version>='3.4' # BSD
sphinxcontrib-apidoc>=0.2.0 # BSD sphinxcontrib-apidoc>=0.2.0 # BSD

View File

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

View File

@ -13,8 +13,6 @@ classifier =
License :: OSI Approved :: Apache Software License License :: OSI Approved :: Apache Software License
Operating System :: POSIX :: Linux Operating System :: POSIX :: Linux
Programming Language :: Python Programming Language :: Python
Programming Language :: Python :: 2
Programming Language :: Python :: 2.7
Programming Language :: Python :: 3 Programming Language :: Python :: 3
Programming Language :: Python :: 3.6 Programming Language :: Python :: 3.6
Programming Language :: Python :: 3.7 Programming Language :: Python :: 3.7

15
tox.ini
View File

@ -1,9 +1,10 @@
[tox] [tox]
minversion = 2.0 minversion = 2.0
skipsdist = True skipsdist = True
envlist = py37,py36,py27,pep8,genpolicy envlist = py37,py36,pep8,genpolicy
[testenv] [testenv]
basepython = python3
usedevelop = True usedevelop = True
install_command = pip install -c{env:UPPER_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master} -U {opts} {packages} install_command = pip install -c{env:UPPER_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master} -U {opts} {packages}
@ -21,18 +22,15 @@ commands =
stestr run --slowest --concurrency=1 {posargs} stestr run --slowest --concurrency=1 {posargs}
[testenv:pep8] [testenv:pep8]
basepython = python3
usedevelop = False usedevelop = False
deps = deps =
commands = {toxinidir}/tools/pip-install-single-req.sh test-requirements.txt hacking commands = {toxinidir}/tools/pip-install-single-req.sh test-requirements.txt hacking
flake8 flake8
[testenv:venv] [testenv:venv]
basepython = python3
commands = {posargs} commands = {posargs}
[testenv:cover] [testenv:cover]
basepython = python3
setenv = setenv =
PYTHON=coverage run --source congress --parallel-mode PYTHON=coverage run --source congress --parallel-mode
commands = commands =
@ -45,11 +43,9 @@ commands =
coverage report coverage report
[testenv:debug] [testenv:debug]
basepython = python3
commands = oslo_debug_helper -t congress/tests {posargs} commands = oslo_debug_helper -t congress/tests {posargs}
[testenv:bench] [testenv:bench]
basepython = python3
setenv = setenv =
TEST_BENCHMARK=true TEST_BENCHMARK=true
VIRTUAL_ENV={envdir} VIRTUAL_ENV={envdir}
@ -65,18 +61,15 @@ builtins = _
exclude=.venv,.git,.tox,dist,doc,*lib/python*,*egg,build,*thirdparty/*,CongressLexer.py,CongressParser.py,contrib/* exclude=.venv,.git,.tox,dist,doc,*lib/python*,*egg,build,*thirdparty/*,CongressLexer.py,CongressParser.py,contrib/*
[testenv:genconfig] [testenv:genconfig]
basepython = python3
deps = deps =
commands = {toxinidir}/tools/pip-install-single-req.sh requirements.txt oslo.config commands = {toxinidir}/tools/pip-install-single-req.sh requirements.txt oslo.config
oslo-config-generator --config-file=etc/congress-config-generator.conf oslo-config-generator --config-file=etc/congress-config-generator.conf
oslo-config-generator --config-file=etc/congress-agent-config-generator.conf oslo-config-generator --config-file=etc/congress-agent-config-generator.conf
[testenv:genpolicy] [testenv:genpolicy]
basepython = python3
commands = oslopolicy-sample-generator --config-file etc/congress-policy-generator.conf commands = oslopolicy-sample-generator --config-file etc/congress-policy-generator.conf
[testenv:docs] [testenv:docs]
basepython = python3
setenv = PYTHONHASHSEED=0 setenv = PYTHONHASHSEED=0
deps = -r{toxinidir}/doc/requirements.txt deps = -r{toxinidir}/doc/requirements.txt
-r{toxinidir}/requirements.txt -r{toxinidir}/requirements.txt
@ -84,7 +77,6 @@ commands = rm -rf doc/build doc/source/api
sphinx-build -W -b html doc/source doc/build/html sphinx-build -W -b html doc/source doc/build/html
[testenv:pdf-docs] [testenv:pdf-docs]
basepython = python3
envdir = {toxworkdir}/docs envdir = {toxworkdir}/docs
deps = {[testenv:docs]deps} deps = {[testenv:docs]deps}
whitelist_externals = whitelist_externals =
@ -94,12 +86,10 @@ commands =
make -C doc/build/pdf make -C doc/build/pdf
[testenv:releasenotes] [testenv:releasenotes]
basepython = python3
deps = -r{toxinidir}/doc/requirements.txt deps = -r{toxinidir}/doc/requirements.txt
commands = sphinx-build -a -E -W -d releasenotes/build/doctrees -b html releasenotes/source releasenotes/build/html commands = sphinx-build -a -E -W -d releasenotes/build/doctrees -b html releasenotes/source releasenotes/build/html
[testenv:bindep] [testenv:bindep]
basepython = python3
# Do not install any requirements. We want this to be fast and work even if # Do not install any requirements. We want this to be fast and work even if
# system dependencies are missing, since it's used to tell you what system # system dependencies are missing, since it's used to tell you what system
# dependencies are missing! This also means that bindep must be installed # dependencies are missing! This also means that bindep must be installed
@ -111,7 +101,6 @@ commands = bindep test
usedevelop = False usedevelop = False
[testenv:lower-constraints] [testenv:lower-constraints]
basepython = python3
deps = deps =
-c{toxinidir}/lower-constraints.txt -c{toxinidir}/lower-constraints.txt
-r{toxinidir}/test-requirements.txt -r{toxinidir}/test-requirements.txt