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

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

Designate 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: I5a5bdc859f87f82097b95b2ebb31edb6e9b72b3a
This commit is contained in:
Ghanshyam Mann 2019-11-15 03:36:42 +00:00 committed by Erik Olof Gunnar Andersson
parent d9fb34767c
commit cdac0fc2f9
9 changed files with 13 additions and 62 deletions

View File

@ -62,34 +62,6 @@
postgresql: True postgresql: True
voting: false voting: false
- job:
name: designate-bind9-py27
parent: designate-bind9
vars:
devstack_localrc:
USE_PYTHON3: false
devstack_services:
s-account: true
s-container: true
s-object: true
s-proxy: true
c-bak: true
- job:
name: designate-pdns4-py27
parent: designate-pdns4
vars:
devstack_localrc:
USE_PYTHON3: false
devstack_services:
s-account: false
s-container: false
s-object: false
s-proxy: false
c-bak: false
- job: - job:
name: designate-ipv6-only-bind9 name: designate-ipv6-only-bind9
post-run: playbooks/designate-bind9/post.yaml post-run: playbooks/designate-bind9/post.yaml
@ -129,8 +101,6 @@
jobs: jobs:
- designate-bind9 - designate-bind9
- designate-pdns4 - designate-pdns4
- designate-bind9-py27
- designate-pdns4-py27
- designate-pdns4-postgres - designate-pdns4-postgres
- designate-grenade-pdns4 - designate-grenade-pdns4
- designate-ipv6-only-pdns4 - designate-ipv6-only-pdns4
@ -141,8 +111,6 @@
jobs: jobs:
- designate-bind9 - designate-bind9
- designate-pdns4 - designate-pdns4
- designate-bind9-py27
- designate-pdns4-py27
- designate-grenade-pdns4 - designate-grenade-pdns4
- designate-ipv6-only-pdns4 - designate-ipv6-only-pdns4
- designate-ipv6-only-bind9 - designate-ipv6-only-bind9
@ -152,7 +120,6 @@
- designate-devstack-jobs - designate-devstack-jobs
- openstack-cover-jobs - openstack-cover-jobs
- openstack-lower-constraints-jobs - openstack-lower-constraints-jobs
- openstack-python-jobs
- openstack-python3-ussuri-jobs - openstack-python3-ussuri-jobs
- publish-openstack-docs-pti - publish-openstack-docs-pti
- periodic-stable-jobs - periodic-stable-jobs

View File

@ -1,7 +1,6 @@
# The order of packages is significant, because pip processes them in the order # The order of packages is significant, because pip processes them in the order
# of appearance. Changing the order has an impact on the overall integration # of appearance. Changing the order has an impact on the overall integration
# process, which may cause wedges in the gate later. # process, which may cause wedges in the gate later.
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;python_version>='3.4' # BSD
sphinxcontrib-httpdomain>=1.3.0 # BSD sphinxcontrib-httpdomain>=1.3.0 # BSD
sphinxcontrib-blockdiag>=1.5.4 # BSD sphinxcontrib-blockdiag>=1.5.4 # BSD

View File

@ -48,6 +48,7 @@
export DEVSTACK_GATE_TEMPEST=1 export DEVSTACK_GATE_TEMPEST=1
export DEVSTACK_GATE_TEMPEST_ALL_PLUGINS=1 export DEVSTACK_GATE_TEMPEST_ALL_PLUGINS=1
export DEVSTACK_GATE_TEMPEST_REGEX=designate export DEVSTACK_GATE_TEMPEST_REGEX=designate
export DEVSTACK_GATE_USE_PYTHON3=True
export PROJECTS="openstack/designate $PROJECTS" export PROJECTS="openstack/designate $PROJECTS"
export PROJECTS="openstack/python-designateclient $PROJECTS" export PROJECTS="openstack/python-designateclient $PROJECTS"

View File

@ -72,9 +72,7 @@
export DEVSTACK_GATE_POSTGRES=1 export DEVSTACK_GATE_POSTGRES=1
fi fi
if [ "{{ python_version }}" == "py35" ] ; then export DEVSTACK_GATE_USE_PYTHON3=True
export DEVSTACK_GATE_USE_PYTHON3=True
fi
cp devstack-gate/devstack-vm-gate-wrap.sh ./safe-devstack-vm-gate-wrap.sh cp devstack-gate/devstack-vm-gate-wrap.sh ./safe-devstack-vm-gate-wrap.sh
./safe-devstack-vm-gate-wrap.sh ./safe-devstack-vm-gate-wrap.sh

View File

@ -49,6 +49,7 @@
export DEVSTACK_GATE_GRENADE=pullup export DEVSTACK_GATE_GRENADE=pullup
export DEVSTACK_GATE_TEMPEST_REGEX="designate_tempest_plugin(?!\.tests.api.v1).*" export DEVSTACK_GATE_TEMPEST_REGEX="designate_tempest_plugin(?!\.tests.api.v1).*"
export DEVSTACK_GATE_HORIZON=1 export DEVSTACK_GATE_HORIZON=1
export DEVSTACK_GATE_USE_PYTHON3=True
export PROJECTS="openstack/designate $PROJECTS" export PROJECTS="openstack/designate $PROJECTS"
export PROJECTS="openstack/python-designateclient $PROJECTS" export PROJECTS="openstack/python-designateclient $PROJECTS"

View File

@ -0,0 +1,8 @@
---
prelude: >
Drop the Python 2.7 support.
upgrade:
- |
Python 2.7 support has been dropped. Last release of Designate
to support python 2.7 is OpenStack Train. The minimum version of Python now
supported by Designate is Python 3.6.

View File

@ -37,7 +37,6 @@ sqlalchemy-migrate>=0.11.0 # Apache-2.0
stevedore>=1.20.0 # Apache-2.0 stevedore>=1.20.0 # Apache-2.0
suds-jurko>=0.6 # LGPLv3+ suds-jurko>=0.6 # LGPLv3+
WebOb>=1.7.1 # MIT WebOb>=1.7.1 # MIT
dnspython>=1.14.0;python_version=='2.7' # http://www.dnspython.org/LICENSE
dnspython3!=1.13.0,!=1.14.0,>=1.12.0;python_version>='3.0' # http://www.dnspython.org/LICENSE dnspython3!=1.13.0,!=1.14.0,>=1.12.0;python_version>='3.0' # http://www.dnspython.org/LICENSE
oslo.db>=4.27.0 # Apache-2.0 oslo.db>=4.27.0 # Apache-2.0
oslo.i18n>=3.15.3 # Apache-2.0 oslo.i18n>=3.15.3 # Apache-2.0

View File

@ -14,8 +14,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

24
tox.ini
View File

@ -1,9 +1,10 @@
[tox] [tox]
minversion = 2.3.2 minversion = 2.3.2
envlist = py27,py37,flake8 envlist = py37,flake8
skipsdist = True skipsdist = True
[testenv] [testenv]
basepython = python3
setenv = setenv =
VIRTUAL_ENV={envdir} VIRTUAL_ENV={envdir}
LANGUAGE=C.UTF-8 LANGUAGE=C.UTF-8
@ -37,12 +38,6 @@ whitelist_externals =
find find
rm rm
[testenv:py27]
commands =
{[testenv]commands}
stestr run {posargs}
stestr slowest
[testenv:py36] [testenv:py36]
basepython = python3.6 basepython = python3.6
commands = commands =
@ -56,7 +51,6 @@ commands =
stestr run '{posargs}' stestr run '{posargs}'
[testenv:docs] [testenv:docs]
basepython = python3
deps = deps =
-c{env:UPPER_CONSTRAINTS_FILE:https://opendev.org/openstack/requirements/raw/branch/master/upper-constraints.txt} -c{env:UPPER_CONSTRAINTS_FILE:https://opendev.org/openstack/requirements/raw/branch/master/upper-constraints.txt}
-r{toxinidir}/requirements.txt -r{toxinidir}/requirements.txt
@ -66,7 +60,6 @@ commands =
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
deps = {[testenv:docs]deps} deps = {[testenv:docs]deps}
whitelist_externals = whitelist_externals =
make make
@ -75,7 +68,6 @@ commands =
make -C doc/build/pdf make -C doc/build/pdf
[testenv:cover] [testenv:cover]
basepython = python3
setenv = setenv =
{[testenv]setenv} {[testenv]setenv}
PYTHON=coverage run --source designate --parallel-mode PYTHON=coverage run --source designate --parallel-mode
@ -89,39 +81,32 @@ commands =
coverage xml -o cover/coverage.xml coverage xml -o cover/coverage.xml
[testenv:bandit] [testenv:bandit]
basepython = python3
deps = -r{toxinidir}/test-requirements.txt deps = -r{toxinidir}/test-requirements.txt
commands = bandit -r designate -n5 -x 'designate/tests/*' -t \ commands = bandit -r designate -n5 -x 'designate/tests/*' -t \
B505,B504,B503,B502,B501,B604,B605,B001,B601,B602,B701,B609,B702,\ B505,B504,B503,B502,B501,B604,B605,B001,B601,B602,B701,B609,B702,\
B608,B506,B312,B310,B411,B108,B103,B102,B309,B308,B302,B307,B306 B608,B506,B312,B310,B411,B108,B103,B102,B309,B308,B302,B307,B306
[testenv:debug] [testenv:debug]
basepython = python3
commands = oslo_debug_helper -t designate/tests {posargs} commands = oslo_debug_helper -t designate/tests {posargs}
[testenv:flake8] [testenv:flake8]
basepython = python3
deps = -r{toxinidir}/test-requirements.txt deps = -r{toxinidir}/test-requirements.txt
commands = sh tools/pretty_flake8.sh commands = sh tools/pretty_flake8.sh
{[testenv:bandit]commands} {[testenv:bandit]commands}
[testenv:pep8] [testenv:pep8]
deps = -r{toxinidir}/test-requirements.txt deps = -r{toxinidir}/test-requirements.txt
basepython = python3
commands = sh tools/pretty_flake8.sh commands = sh tools/pretty_flake8.sh
{[testenv:bandit]commands} {[testenv:bandit]commands}
doc8 {posargs} doc8 {posargs}
[testenv:genconfig] [testenv:genconfig]
basepython = python3
commands = oslo-config-generator --config-file=etc/designate/designate-config-generator.conf commands = oslo-config-generator --config-file=etc/designate/designate-config-generator.conf
[testenv:genpolicy] [testenv:genpolicy]
basepython = python3
commands = oslopolicy-sample-generator --config-file etc/designate/designate-policy-generator.conf commands = oslopolicy-sample-generator --config-file etc/designate/designate-policy-generator.conf
[testenv:bashate] [testenv:bashate]
basepython = python3
deps = bashate deps = bashate
whitelist_externals = bash whitelist_externals = bash
commands = bash -c "find {toxinidir}/devstack \ commands = bash -c "find {toxinidir}/devstack \
@ -139,7 +124,6 @@ commands = bash -c "find {toxinidir}/devstack \
-print0 | xargs -0 bashate -v" -print0 | xargs -0 bashate -v"
[testenv:pip-check-reqs] [testenv:pip-check-reqs]
basepython = python3
# do not install test-requirements as that will pollute the virtualenv for # do not install test-requirements as that will pollute the virtualenv for
# determining missing packages # determining missing packages
# this also means that pip-missing-reqs must be installed separately, outside # this also means that pip-missing-reqs must be installed separately, outside
@ -149,7 +133,6 @@ deps = pip-check-reqs
commands=pip-missing-reqs -d --ignore-file=designate/tests/* designate commands=pip-missing-reqs -d --ignore-file=designate/tests/* designate
[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 docs.openstack.org. # the API Ref to docs.openstack.org.
deps = deps =
@ -160,7 +143,6 @@ commands =
sphinx-build -E -W -b html -d api-ref/build/doctrees api-ref/source api-ref/build/html sphinx-build -E -W -b html -d api-ref/build/doctrees api-ref/source api-ref/build/html
[testenv:releasenotes] [testenv:releasenotes]
basepython = python3
deps = deps =
-c{env:UPPER_CONSTRAINTS_FILE:https://opendev.org/openstack/requirements/raw/branch/master/upper-constraints.txt} -c{env:UPPER_CONSTRAINTS_FILE:https://opendev.org/openstack/requirements/raw/branch/master/upper-constraints.txt}
-r{toxinidir}/requirements.txt -r{toxinidir}/requirements.txt
@ -170,7 +152,6 @@ commands =
sphinx-build -a -E -d releasenotes/build/doctrees -b html releasenotes/source releasenotes/build/html sphinx-build -a -E -d releasenotes/build/doctrees -b html releasenotes/source releasenotes/build/html
[testenv:venv] [testenv:venv]
basepython = python3
commands = {posargs} commands = {posargs}
deps = -r{toxinidir}/requirements.txt deps = -r{toxinidir}/requirements.txt
-r{toxinidir}/test-requirements.txt -r{toxinidir}/test-requirements.txt
@ -201,7 +182,6 @@ local-check-factory = designate.hacking.checks.factory
import_exceptions = designate.i18n import_exceptions = designate.i18n
[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