From bf9c8b5af14351dbfb5cac9a441f3b79d5991a1a Mon Sep 17 00:00:00 2001 From: Marcin Juszkiewicz Date: Wed, 20 Nov 2019 11:47:46 +0100 Subject: [PATCH] Get rid of Python 2 support 2020 is coming, everyone should be using Python 3 now. As per the official python support timeline set forth by the OpenStack TC [1], OpenStack Train (in our case, kolla-ansible 9.x) is the last release that will support python2.7. [1] https://governance.openstack.org/tc/resolutions/20180529-python2-deprecation-timeline.html Implements: blueprint drop-py2-support Change-Id: Ibb3b12a779ecfd424053d0b3e98dac2f21d909bc --- bindep.txt | 2 -- doc/requirements.txt | 1 - releasenotes/notes/drop-py27-509835da35f047b4.yaml | 6 ++++++ setup.cfg | 2 -- tox.ini | 13 ++----------- 5 files changed, 8 insertions(+), 16 deletions(-) create mode 100644 releasenotes/notes/drop-py27-509835da35f047b4.yaml diff --git a/bindep.txt b/bindep.txt index 79a11cf048..64ec0c41c7 100644 --- a/bindep.txt +++ b/bindep.txt @@ -3,8 +3,6 @@ libffi-dev [platform:dpkg] libffi-devel [platform:rpm] gcc [platform:rpm] gcc [platform:dpkg] -python-dev [platform:dpkg] -python-devel [platform:rpm] python3-dev [platform:dpkg] python3-devel [platform:rpm] openssl-devel [platform:rpm] diff --git a/doc/requirements.txt b/doc/requirements.txt index 87c1fa5e6e..d3ac8c4d52 100644 --- a/doc/requirements.txt +++ b/doc/requirements.txt @@ -7,6 +7,5 @@ # be installed in a specific order. openstackdocstheme>=1.19.0 # Apache-2.0 reno>=2.5.0 # Apache-2.0 -sphinx>=1.8.0,<2.0.0;python_version=='2.7' # BSD sphinx>=1.8.0,!=2.1.0;python_version>='3.4' # BSD sphinxcontrib-svg2pdfconverter>=0.1.0 # BSD diff --git a/releasenotes/notes/drop-py27-509835da35f047b4.yaml b/releasenotes/notes/drop-py27-509835da35f047b4.yaml new file mode 100644 index 0000000000..4d43ef38f8 --- /dev/null +++ b/releasenotes/notes/drop-py27-509835da35f047b4.yaml @@ -0,0 +1,6 @@ +--- +upgrade: + - | + Python 2.7 support has been dropped. Last release of kolla-ansible to + support Python 2.7 is OpenStack Train. The minimum version of Python now + supported by kolla-ansible is Python 3.6. diff --git a/setup.cfg b/setup.cfg index 5208bbe323..825cca7786 100644 --- a/setup.cfg +++ b/setup.cfg @@ -14,8 +14,6 @@ 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 diff --git a/tox.ini b/tox.ini index 6a8f514359..102f489e9a 100644 --- a/tox.ini +++ b/tox.ini @@ -1,9 +1,10 @@ [tox] minversion = 2.5.0 skipsdist = True -envlist = py27,py37,pep8,pypy +envlist = py37,pep8,pypy [testenv] +basepython = python3 usedevelop=True whitelist_externals = find rm @@ -20,11 +21,9 @@ commands = stestr run --slowest {posargs} [testenv:debug] -basepython = python3 commands = oslo_debug_helper -t tests {posargs} [testenv:cover] -basepython = python3 setenv = VIRTUAL_ENV={envdir} NOSE_WITH_COVERAGE=1 NOSE_COVER_BRANCHES=1 @@ -38,7 +37,6 @@ commands = coverage xml -o cover/coverage.xml [testenv:pep8] -basepython = python3 # sphinx needs to be installed to make doc8 work properly deps = {[testenv]deps} @@ -54,11 +52,9 @@ commands = [testenv:bandit] # B303: Use of insecure MD2, MD4, MD5, or SHA1 hash function. -basepython = python3 commands = bandit --skip B303 -r ansible kolla_ansible tests tools [testenv:venv] -basepython = python3 deps = -c{env:UPPER_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master} -r{toxinidir}/test-requirements.txt @@ -66,7 +62,6 @@ deps = commands = {posargs} [testenv:docs] -basepython = python3 deps = -c{env:UPPER_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master} -r{toxinidir}/requirements.txt @@ -76,7 +71,6 @@ commands = sphinx-build -W --keep-going -b html doc/source doc/build/html [testenv:deploy-guide] -basepython = python3 deps = -c{env:UPPER_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master} -r{toxinidir}/requirements.txt @@ -87,7 +81,6 @@ commands = sphinx-build -a -E -W -d deploy-guide/build/doctrees --keep-going -b html deploy-guide/source deploy-guide/build/html [testenv:pdf-docs] -basepython = python3 whitelist_externals = make deps = {[testenv:docs]deps} commands = @@ -95,7 +88,6 @@ commands = make -C doc/build/pdf [testenv:releasenotes] -basepython = python3 deps = -c{env:UPPER_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master} -r{toxinidir}/requirements.txt @@ -109,7 +101,6 @@ show-source = True exclude=.eggs,.git,.tox,doc [testenv:lower-constraints] -basepython = python3 deps = -c{toxinidir}/lower-constraints.txt -r{toxinidir}/test-requirements.txt