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

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

Trove 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

Change-Id: I6b448747c873bfc9c0138c0f7e3ca67ddce02dee
This commit is contained in:
Ghanshyam Mann 2019-10-30 06:16:14 +00:00 committed by Lingxian Kong
parent 0538208568
commit e6f55c57d5
6 changed files with 13 additions and 22 deletions

View File

@ -3,8 +3,7 @@
- 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
- periodic-stable-jobs - periodic-stable-jobs
- publish-openstack-docs-pti - publish-openstack-docs-pti
- release-notes-jobs-python3 - release-notes-jobs-python3
@ -113,6 +112,7 @@
SERVICE_HOST: '' SERVICE_HOST: ''
HOST_IP: '' HOST_IP: ''
VNCSERVER_PROXYCLIENT_ADDRESS: 127.0.0.1 VNCSERVER_PROXYCLIENT_ADDRESS: 127.0.0.1
USE_PYTHON3: True
run: playbooks/trove-devstack-base.yaml run: playbooks/trove-devstack-base.yaml
irrelevant-files: irrelevant-files:
- ^.*\.rst$ - ^.*\.rst$
@ -125,7 +125,7 @@
- job: - job:
name: trove-fakemodetests-base name: trove-fakemodetests-base
parent: openstack-tox-py27 parent: openstack-tox-py36
abstract: true abstract: true
irrelevant-files: irrelevant-files:
- ^.*\.rst$ - ^.*\.rst$
@ -382,4 +382,4 @@
guest_os_release: xenial guest_os_release: xenial
guest_username: ubuntu guest_username: ubuntu
branch: master branch: master
dev_mode: true dev_mode: true

View File

@ -36,6 +36,7 @@
export DEVSTACK_GATE_TROVE=1 export DEVSTACK_GATE_TROVE=1
export TEMPEST_CONCURRENCY=2 export TEMPEST_CONCURRENCY=2
export BRANCH_OVERRIDE=default export BRANCH_OVERRIDE=default
export DEVSTACK_GATE_USE_PYTHON3=True
if [ "$BRANCH_OVERRIDE" != "default" ] ; then if [ "$BRANCH_OVERRIDE" != "default" ] ; then
export OVERRIDE_ZUUL_BRANCH=$BRANCH_OVERRIDE export OVERRIDE_ZUUL_BRANCH=$BRANCH_OVERRIDE
fi fi

View File

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

View File

@ -43,7 +43,6 @@ oslo.messaging>=5.29.0 # Apache-2.0
osprofiler>=1.4.0 # Apache-2.0 osprofiler>=1.4.0 # Apache-2.0
oslo.log>=3.36.0 # Apache-2.0 oslo.log>=3.36.0 # Apache-2.0
oslo.db>=4.27.0 # Apache-2.0 oslo.db>=4.27.0 # Apache-2.0
enum34>=1.0.4;python_version=='2.7' or python_version=='2.6' or python_version=='3.3' # BSD
xmltodict>=0.10.1 # MIT xmltodict>=0.10.1 # MIT
cryptography>=2.1.4 # BSD/Apache-2.0 cryptography>=2.1.4 # BSD/Apache-2.0
oslo.policy>=1.30.0 # Apache-2.0 oslo.policy>=1.30.0 # Apache-2.0

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

17
tox.ini
View File

@ -1,9 +1,10 @@
[tox] [tox]
envlist = py27,py37,pep8,cover,api-ref,releasenotes,bandit,fakemodetests,pylint envlist = py37,pep8,cover,api-ref,releasenotes,bandit,fakemodetests,pylint
minversion = 2.0 minversion = 2.0
skipsdist = True skipsdist = True
[testenv] [testenv]
basepython = python3
setenv = VIRTUAL_ENV={envdir} setenv = VIRTUAL_ENV={envdir}
PYTHONWARNINGS=default::DeprecationWarning PYTHONWARNINGS=default::DeprecationWarning
OS_TEST_PATH=./trove/tests/unittests OS_TEST_PATH=./trove/tests/unittests
@ -29,21 +30,17 @@ whitelist_externals = find
sitepackages = True sitepackages = True
[testenv:pep8] [testenv:pep8]
basepython = python3
commands = commands =
flake8 flake8
doc8 {posargs} doc8 {posargs}
[testenv:fakemodetests] [testenv:fakemodetests]
basepython = python3
commands = {envpython} run_tests.py commands = {envpython} run_tests.py
[testenv:debug] [testenv:debug]
basepython = python3
commands = oslo_debug_helper {posargs} commands = oslo_debug_helper {posargs}
[testenv:cover] [testenv:cover]
basepython = python3
setenv = setenv =
{[testenv]setenv} {[testenv]setenv}
PYTHON=coverage run --source trove PYTHON=coverage run --source trove
@ -56,7 +53,6 @@ commands =
coverage report coverage report
[testenv:venv] [testenv:venv]
basepython = python3
commands = {posargs} commands = {posargs}
[doc8] [doc8]
@ -79,7 +75,6 @@ import_exceptions = trove.common.i18n
local-check-factory = trove.hacking.checks.factory local-check-factory = trove.hacking.checks.factory
[testenv:api-ref] [testenv:api-ref]
basepython = python3
# This environment is called from CI scripts to test and publish # This environment is called from CI scripts to test and publish
# the API Ref to developer.openstack.org. # the API Ref to developer.openstack.org.
commands = commands =
@ -87,41 +82,33 @@ commands =
sphinx-build -W -b html -d api-ref/build/doctrees api-ref/source api-ref/build/html sphinx-build -W -b html -d api-ref/build/doctrees api-ref/source api-ref/build/html
[testenv:releasenotes] [testenv:releasenotes]
basepython = python3
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:bandit] [testenv:bandit]
basepython = python3
commands = bandit -r trove -n5 -x tests commands = bandit -r trove -n5 -x tests
[testenv:bandit-baseline] [testenv:bandit-baseline]
basepython = python3
envdir = {toxworkdir}/bandit envdir = {toxworkdir}/bandit
commands = bandit-baseline -r trove -n5 -x tests -ii -ll commands = bandit-baseline -r trove -n5 -x tests -ii -ll
[testenv:genpolicy] [testenv:genpolicy]
basepython = python3
commands = oslopolicy-sample-generator --config-file=tools/trove-policy-generator.conf commands = oslopolicy-sample-generator --config-file=tools/trove-policy-generator.conf
[testenv:pylint] [testenv:pylint]
basepython = python3
deps = -r{toxinidir}/requirements.txt deps = -r{toxinidir}/requirements.txt
-r{toxinidir}/test-requirements.txt -r{toxinidir}/test-requirements.txt
commands = python tools/trove-pylint.py {posargs:check} commands = python tools/trove-pylint.py {posargs:check}
[testenv:docs] [testenv:docs]
basepython = python3
commands = sphinx-build -W -b html doc/source doc/build/html commands = sphinx-build -W -b html doc/source doc/build/html
[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
-r{toxinidir}/requirements.txt -r{toxinidir}/requirements.txt
[testenv:trovestack] [testenv:trovestack]
basepython = python3
skip_install = True skip_install = True
changedir = {toxinidir}/integration/scripts changedir = {toxinidir}/integration/scripts
passenv = * passenv = *