
Fix pylint by specifying a nodeset that contains a python3 interpreter. Switched the job to run py3. This application needs to be installed into the virtualenv in order for its entry points to be discoverable by stevedore for the unit tests. However py27 fails to find pbr during the sdist phase since the zuul node is running a py35 virtualenv. Disabling sdist should get pip to work. Other tox settings should install it properly in the virtualenv. Story: 2008943 Task: 43010 Signed-off-by: albailey <Al.Bailey@windriver.com> Change-Id: I834a414f90d16d303c499e9ec3799ca5d02ca425
132 lines
3.5 KiB
INI
132 lines
3.5 KiB
INI
[tox]
|
|
envlist = flake8,py27,py36,pylint,bandit
|
|
minversion = 1.6
|
|
skipsdist = True
|
|
|
|
# tox does not work if the path to the workdir is too long, so move it to /tmp
|
|
toxworkdir = /tmp/{env:USER}_k8soidctox
|
|
stxdir = {toxinidir}/../../..
|
|
distshare={toxworkdir}/.tox/distshare
|
|
|
|
[testenv]
|
|
usedevelop = True
|
|
# 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
|
|
|
|
# tox is silly... these need to be separated by a newline....
|
|
whitelist_externals = bash
|
|
find
|
|
|
|
install_command = pip install \
|
|
-c{env:UPPER_CONSTRAINTS_FILE:https://opendev.org/openstack/requirements/raw/branch/stable/stein/upper-constraints.txt} \
|
|
{opts} {packages}
|
|
|
|
# Note the hash seed is set to 0 until can be tested with a
|
|
# random hash seed successfully.
|
|
setenv = VIRTUAL_ENV={envdir}
|
|
PYTHONHASHSEED=0
|
|
PYTHONDONTWRITEBYTECODE=1
|
|
OS_TEST_PATH=./k8sapp_oidc/tests
|
|
LANG=en_US.UTF-8
|
|
LANGUAGE=en_US:en
|
|
LC_ALL=C
|
|
EVENTS_YAML=./k8sapp_oidc/tests/events_for_testing.yaml
|
|
SYSINV_TEST_ENV=True
|
|
TOX_WORK_DIR={toxworkdir}
|
|
PYLINTHOME={toxworkdir}
|
|
|
|
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
|
|
|
|
|
|
passenv =
|
|
XDG_CACHE_HOME
|
|
|
|
commands =
|
|
find . -type f -name "*.pyc" -delete
|
|
|
|
[flake8]
|
|
exclude = build,dist,tools,.eggs
|
|
max-line-length=120
|
|
|
|
[testenv:flake8]
|
|
basepython = python3
|
|
deps = -r{toxinidir}/test-requirements.txt
|
|
commands =
|
|
flake8 {posargs} .
|
|
|
|
[testenv:py27]
|
|
basepython = python2.7
|
|
commands =
|
|
{[testenv]install_runtime}
|
|
{[testenv]commands}
|
|
stestr run {posargs}
|
|
stestr slowest
|
|
|
|
[testenv:py36]
|
|
basepython = python3.6
|
|
commands =
|
|
{[testenv]install_runtime}
|
|
{[testenv]commands}
|
|
stestr run {posargs}
|
|
stestr slowest
|
|
|
|
[testenv:pep8]
|
|
# testenv:flake8 clone
|
|
basepython = {[testenv:flake8]basepython}
|
|
deps = {[testenv:flake8]deps}
|
|
commands = {[testenv:flake8]commands}
|
|
|
|
[testenv:venv]
|
|
commands = {posargs}
|
|
|
|
[bandit]
|
|
|
|
[testenv:bandit]
|
|
basepython = python3
|
|
deps = -r{toxinidir}/test-requirements.txt
|
|
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]
|
|
basepython = python2.7
|
|
deps = {[testenv]deps}
|
|
setenv = {[testenv]setenv}
|
|
PYTHON=coverage run --parallel-mode
|
|
|
|
commands =
|
|
{[testenv]commands}
|
|
coverage erase
|
|
stestr run {posargs}
|
|
coverage combine
|
|
coverage html -d cover
|
|
coverage xml -o cover/coverage.xml
|
|
coverage report
|
|
|
|
[testenv:pip-missing-reqs]
|
|
# do not install test-requirements as that will pollute the virtualenv for
|
|
# determining missing packages
|
|
# this also means that pip-missing-reqs must be installed separately, outside
|
|
# of the requirements.txt files
|
|
deps = pip_missing_reqs
|
|
-rrequirements.txt
|
|
commands=pip-missing-reqs -d --ignore-file=/k8sapp_oidc/tests k8sapp_oidc
|