[ussuri][goal] Drop python 2.7 support and testing
OpenStack is dropping the py2.7 support in ussuri cycle.
Complete discussion & schedule can be found in
Ussuri Communtiy-wide goal:
MODIFY
.zuul.yaml
.zuul.yaml
templates:
- openstack-cover-jobs
- openstack-lower-constraints-jobs
- - openstack-python-jobs
- - openstack-python3-train-jobs
+ - openstack-python3-ussuri-jobs
- check-requirements
- openstackclient-plugin-jobs
- publish-openstack-docs-pti

MODIFY
doc/requirements.txt
doc/requirements.txt
openstackdocstheme>=1.18.1 # 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 # BSD
sphinxcontrib-httpdomain>=1.3.0 # BSD

ADD
releasenotes/notes/drop-python-2-7-73d3113c69d724d6.yaml
+---
+upgrade:
+ - |
+ Python 2.7 support has been dropped. The minimum version of Python now
+ supported by python-heatclient is Python 3.6.

MODIFY
setup.cfg
setup.cfg
@@ -7,6 +7,7 @@ description-file =
author = OpenStack
author-email = openstack-discuss@lists.openstack.org
home-page = https://docs.openstack.org/python-heatclient/latest
+python-requires = >=3.6
classifier =
Development Status :: 5 - Production/Stable
Environment :: Console
@@ -16,11 +17,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 =
@@ -100,16 +101,6 @@ heatclient.resource.formatter.list =
yaml = cliff.formatters.yaml_format:YAMLFormatter
json = cliff.formatters.json_format:JSONFormatter
-[global]
-setup-hooks =
- pbr.hooks.setup_hook
-
-[upload_sphinx]
-upload-dir = doc/build/html
-
-[wheel]
-universal = 1
-
[extract_messages]
keywords = _ gettext ngettext l_ lazy_gettext
mapping_file = babel.cfg

MODIFY
setup.py
setup.py
# 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)

MODIFY
tox.ini
tox.ini
[tox]
-envlist = pypy,py27,py37,pep8
-minversion = 2.0
+envlist = pypy,py37,pep8
+ignore_basepython_conflict = true
+minversion = 3.1.0
skipsdist = True
[testenv]
+basepython = python3
setenv = VIRTUAL_ENV={envdir}
- CLIENT_NAME=python-heatclient
usedevelop = True
-install_command = pip install {opts} {packages}
deps =
-c{env:UPPER_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master}
-r{toxinidir}/requirements.txt
@@ -17,24 +17,13 @@ commands = find . -type f -name "*.py[c|o]" -delete
whitelist_externals = find
[testenv:debug]
-basepython = python3
-commands = oslo_debug_helper -t heatclient/tests {posargs}
-
-[testenv:debug-py27]
-basepython = python2.7
-commands = oslo_debug_helper -t heatclient/tests {posargs}
-
-[testenv:debug-py35]
-basepython = python3.5
commands = oslo_debug_helper -t heatclient/tests {posargs}
[testenv:pep8]
-basepython = python3
commands =
flake8
[testenv:venv]
-basepython = python3
commands = {posargs}
[testenv:functional]
@@ -44,7 +33,6 @@ setenv =
passenv = OS_*
[testenv:cover]
-basepython = python3
setenv =
PYTHON=coverage run --source heatclient --parallel-mode
commands =
@@ -55,7 +43,6 @@ commands =
coverage report
[testenv:docs]
-basepython = python3
deps =
-c{env:UPPER_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master}
-r{toxinidir}/doc/requirements.txt
@@ -71,14 +58,12 @@ max-complexity=20
import_exceptions = heatclient._i18n
[testenv:releasenotes]
-basepython = python3
deps =
-c{env:UPPER_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master}
-r{toxinidir}/doc/requirements.txt
commands = sphinx-build -a -E -W -d releasenotes/build/doctrees -b html releasenotes/source releasenotes/build/html
[testenv:lower-constraints]
-basepython = python3
deps =
-c{toxinidir}/lower-constraints.txt
-r{toxinidir}/test-requirements.txt

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

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

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: I54863f2301758dcd48de4ee73bcc8582e5036afa