Add python3.9 support

Add support for python3.9 by adding a python3.9 gate.
Tested locally and running zuul gate.

Story: 2009101
Task: 43169

Signed-off-by: Charles Short <charles.short@windriver.com>
Change-Id: I5f184bb4b3a33ae0e033e1f231c0d4d5eca3d800
This commit is contained in:
Charles Short 2021-09-02 04:14:18 -04:00
parent d3ef6e81b6
commit b12ad418e4
3 changed files with 50 additions and 15 deletions

View File

@ -5,6 +5,7 @@
- openstack-tox-linters
- k8sapp-oidc-tox-py27
- k8sapp-oidc-tox-py36
- k8sapp-oidc-tox-py39
- k8sapp-oidc-tox-flake8
- k8sapp-oidc-tox-pylint
- k8sapp-oidc-tox-bandit
@ -13,6 +14,7 @@
- openstack-tox-linters
- k8sapp-oidc-tox-py27
- k8sapp-oidc-tox-py36
- k8sapp-oidc-tox-py39
- k8sapp-oidc-tox-flake8
- k8sapp-oidc-tox-pylint
- k8sapp-oidc-tox-bandit
@ -54,6 +56,25 @@
tox_envlist: py36
tox_extra_args: -c python-k8sapp-oidc/k8sapp_oidc/tox.ini
- job:
name: k8sapp-oidc-tox-py39
parent: tox-py39
description: |
Run py39 test for k8sapp_oidc
nodeset: debian-bullseye
required-projects:
- starlingx/config
- starlingx/fault
- starlingx/update
- starlingx/utilities
files:
- python-k8sapp-oidc/*
vars:
tox_envlist: py39
python_version: 3.9
tox_extra_args: -c python-k8sapp-oidc/k8sapp_oidc/tox.ini
- job:
name: k8sapp-oidc-tox-flake8
parent: tox

10
bindep.txt Normal file
View File

@ -0,0 +1,10 @@
# This is a cross-platform list tracking distribution packages needed for install and tests;
# see https://docs.openstack.org/infra/bindep/ for additional information.
libffi-dev [platform:dpkg]
libldap2-dev [platform:dpkg]
libxml2-dev [platform:dpkg]
libxslt1-dev [platform:dpkg]
libsasl2-dev [platform:dpkg]
libffi-devel [platform:rpm]
python3-all-dev [platform:dpkg]

View File

@ -1,5 +1,5 @@
[tox]
envlist = flake8,py27,py36,pylint,bandit
envlist = flake8,py27,py36,py39,pylint,bandit
minversion = 1.6
skipsdist = True
@ -14,8 +14,7 @@ usedevelop = True
# enabling usedevelop results in py27 develop-inst:
# Exception: Versioning for this project requires either an sdist tarball,
# or access to an upstream git repository.
# Note. site-packages is true and rpm-python must be yum installed on your dev machine.
#sitepackages = True
sitepackages = False
# tox is silly... these need to be separated by a newline....
whitelist_externals = bash
@ -41,15 +40,12 @@ setenv = VIRTUAL_ENV={envdir}
deps = -r{toxinidir}/requirements.txt
-r{toxinidir}/test-requirements.txt
install_runtime =
pip install \
-c{env:UPPER_CONSTRAINTS_FILE:https://opendev.org/openstack/requirements/raw/branch/stable/stein/upper-constraints.txt} \
-e {[tox]stxdir}/config/tsconfig/tsconfig \
-e {[tox]stxdir}/config/sysinv/sysinv/sysinv \
-e {[tox]stxdir}/fault/fm-api \
-e {[tox]stxdir}/fault/python-fmclient/fmclient \
-e {[tox]stxdir}/utilities/ceph/python-cephclient/python-cephclient \
-e {[tox]stxdir}/update/cgcs-patch/cgcs-patch
-e{[tox]stxdir}/config/tsconfig/tsconfig
-e{[tox]stxdir}/config/sysinv/sysinv/sysinv
-e{[tox]stxdir}/fault/fm-api
-e{[tox]stxdir}/fault/python-fmclient/fmclient
-e{[tox]stxdir}/utilities/ceph/python-cephclient/python-cephclient
-e{[tox]stxdir}/update/cgcs-patch/cgcs-patch
passenv =
@ -71,7 +67,6 @@ commands =
[testenv:py27]
basepython = python2.7
commands =
{[testenv]install_runtime}
{[testenv]commands}
stestr run {posargs}
stestr slowest
@ -79,11 +74,21 @@ commands =
[testenv:py36]
basepython = python3.6
commands =
{[testenv]install_runtime}
{[testenv]commands}
stestr run {posargs}
stestr slowest
[testenv:py39]
basepython = python3.9
install_command = pip install \
-c{env:UPPER_CONSTRAINTS_FILE:https://opendev.org/starlingx/root/raw/branch/master/build-tools/requirements/debian/upper-constraints.txt} \
{opts} {packages}
commands =
{[testenv]commands}
stestr run {posargs}
stestr slowest
[testenv:pep8]
# testenv:flake8 clone
basepython = {[testenv:flake8]basepython}
@ -103,7 +108,6 @@ commands = bandit --ini tox.ini -n 5 -r k8sapp_oidc
[testenv:pylint]
basepython = python3
commands =
{[testenv]install_runtime}
pylint {posargs} k8sapp_oidc --rcfile=./pylint.rc
[testenv:cover]