Remove Python 2.x support

Drop support of Python 2.x as it is being deprecated.

Updated documentation, tox config, requirements.txt.

Job templates added:
- openstack-python35-jobs: openstack-tox-py35
- openstack-python3-ussuri-jobs: openstack-tox-py36, openstack-tox-py37

Job added:
- openstack-tox-pep8

Job templates removed:
- openstack-python-jobs: openstack-tox-pep8, openstack-tox-py27

Jobs removed:
- deckhand-tox-py27-postgresql

Change-Id: I7783ba841258a913f5ecd9d6f1130d378345ab5a
This commit is contained in:
Roman Gorshunov 2019-08-20 21:41:00 +02:00
parent 90f653bc0f
commit 416df18353
8 changed files with 10 additions and 46 deletions

View File

@ -13,15 +13,15 @@
- project: - project:
templates: templates:
- openstack-cover-jobs - openstack-cover-jobs
- openstack-python-jobs
- docs-on-readthedocs - docs-on-readthedocs
- openstack-python35-jobs
- openstack-python3-train-jobs - openstack-python3-train-jobs
- openstack-python3-ussuri-jobs
vars: vars:
rtd_webhook_id: '38572' rtd_webhook_id: '38572'
rtd_project_name: 'airship-deckhand' rtd_project_name: 'airship-deckhand'
check: check:
jobs: jobs:
- deckhand-tox-py27-postgresql
- deckhand-tox-py35-postgresql - deckhand-tox-py35-postgresql
- deckhand-functional-uwsgi-py35: - deckhand-functional-uwsgi-py35:
voting: false voting: false
@ -40,13 +40,13 @@
- deckhand-airskiff-deployment - deckhand-airskiff-deployment
gate: gate:
jobs: jobs:
- deckhand-tox-py27-postgresql
- deckhand-tox-py35-postgresql - deckhand-tox-py35-postgresql
- deckhand-functional-docker-py35-ubuntu - deckhand-functional-docker-py35-ubuntu
- deckhand-functional-docker-py35-opensuse - deckhand-functional-docker-py35-opensuse
- deckhand-chart-build-gate - deckhand-chart-build-gate
- deckhand-docker-build-gate-ubuntu - deckhand-docker-build-gate-ubuntu
- deckhand-docker-build-gate-opensuse - deckhand-docker-build-gate-opensuse
- openstack-tox-pep8
post: post:
jobs: jobs:
- deckhand-upload-git-mirror - deckhand-upload-git-mirror
@ -67,14 +67,6 @@
- name: primary - name: primary
label: ubuntu-xenial label: ubuntu-xenial
- job:
name: deckhand-tox-py27-postgresql
parent: openstack-tox-py27
pre-run:
- tools/gate/playbooks/install-postgresql.yaml
vars:
tox_envlist: py27-postgresql
- job: - job:
name: deckhand-tox-py35-postgresql name: deckhand-tox-py35-postgresql
parent: openstack-tox-py35 parent: openstack-tox-py35

View File

@ -184,5 +184,6 @@ def document_dict_representer(dumper, data):
yaml.add_representer(DocumentDict, document_dict_representer) yaml.add_representer(DocumentDict, document_dict_representer)
# Required for py27 compatibility: yaml.safe_dump/safe_dump_all doesn't # Required for py27 compatibility: yaml.safe_dump/safe_dump_all doesn't
# work unless SafeRepresenter add_representer method is called. # work unless SafeRepresenter add_representer method is called.
# Upd: somehow required also for py3*.
safe_representer = yaml.representer.SafeRepresenter safe_representer = yaml.representer.SafeRepresenter
safe_representer.add_representer(DocumentDict, document_dict_representer) safe_representer.add_representer(DocumentDict, document_dict_representer)

View File

@ -101,9 +101,8 @@ Deckhand strives to conform to the
Python Python
------ ------
The Deckhand code base lives under ``/deckhand``. Deckhand supports py27 The Deckhand code base lives under ``/deckhand``. Deckhand supports py35 through py37
and py35 interpreters. Once OpenStack deprecates usage of py27, Deckhand versions of interpreters.
will as well.
See :ref:`coding-guide` for more information on contribution guidelines. See :ref:`coding-guide` for more information on contribution guidelines.

View File

@ -57,19 +57,17 @@ Deckhand.
To run unit tests using SQLite, execute:: To run unit tests using SQLite, execute::
$ tox -epy27
$ tox -epy35 $ tox -epy35
against a py27- or py35-backed environment, respectively. against a py35-backed environment, respectively.
To run unit tests using PostgreSQL, execute:: To run unit tests using PostgreSQL, execute::
$ tox -epy27-postgresql
$ tox -epy35-postgresql $ tox -epy35-postgresql
To run individual unit tests, run (for example):: To run individual unit tests, run (for example)::
$ tox -e py27 -- deckhand.tests.unit.db.test_revisions $ tox -e py35 -- deckhand.tests.unit.db.test_revisions
.. warning:: .. warning::
@ -169,12 +167,6 @@ Troubleshooting
$ sudo apt-get install tox -y $ sudo apt-get install tox -y
* For any errors related to running ``tox -e py27``:
Ensure that ``python-dev`` is installed::
$ sudo apt-get install python-dev -y
* For any errors related to running ``tox -e py35``: * For any errors related to running ``tox -e py35``:
Ensure that ``python3-dev`` is installed:: Ensure that ``python3-dev`` is installed::

View File

@ -335,9 +335,3 @@ included beneath each bullet.
Ensure that ``python3-dev`` is installed:: Ensure that ``python3-dev`` is installed::
$ [sudo] apt-get install python3-dev -y $ [sudo] apt-get install python3-dev -y
* For any errors related to running ``tox -e py27``:
Ensure that ``python3-dev`` is installed::
$ [sudo] apt-get install python-dev -y

View File

@ -29,6 +29,7 @@ pbr==5.1.0
PasteDeploy==1.5.2 PasteDeploy==1.5.2
Paste==3.0.1 Paste==3.0.1
psycopg2==2.7.5 psycopg2==2.7.5
pyyaml~=5.1
# TODO(alanmeadows) # TODO(alanmeadows)
# this must match the container service # this must match the container service

View File

@ -12,8 +12,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,7 +1,7 @@
[tox] [tox]
minversion = 2.3.1 minversion = 2.3.1
skipsdist = True skipsdist = True
envlist = py{37,36,27},py{37,36,27}-{postgresql},functional,cover,pep8,bandit,docs envlist = py{37,36},py{37,36}-{postgresql},functional,cover,pep8,bandit,docs
[testenv] [testenv]
usedevelop = True usedevelop = True
@ -25,19 +25,6 @@ basepython=python3
commands = commands =
{posargs} {posargs}
[testenv:py27]
basepython = python2.7
commands =
{[testenv]commands}
stestr run {posargs}
stestr slowest
[testenv:py27-postgresql]
basepython = python2.7
commands =
{[testenv]commands}
{toxinidir}/tools/run_pifpaf.sh '{posargs}'
[testenv:py35] [testenv:py35]
basepython = python3 basepython = python3
commands = commands =