jenkins-job-builder/tox.ini
Thanh Ha 7e860919a8
fix: Drop testing for Python 3.6
Change I42660519c1cbe94a4322767b1940e113b0e5a276 missed dropping support
for Python 3.6 which is also EOL.

This is not noted as a breaking change as the release email that went out
for JJB 4.0.0 already addresses that we will be dropping support for
Python 3.6 and older so this simply removes the CI testing associated with
that statement.

Change-Id: Ia146401460c8978d1b53213413bf92d5aef9a3cf
Signed-off-by: Thanh Ha <zxiiro@gmail.com>
2022-04-12 12:28:03 -04:00

91 lines
2.8 KiB
INI

[tox]
minversion = 2.2
envlist = linters, docs, docs-linkcheck, py37, py38, cover
skip_missing_interpreters = true
# custom vars (no meaning to tox)
install_test_deps = pip install -q -r test-requirements.txt
[testenv]
setenv =
LANG=en_US.UTF-8
PYTHONDONTWRITEBYTECODE=1
SUBUNIT_FORMATTER=tee testr_subunit_log
VIRTUAL_ENV={envdir}
usedevelop = True
install_command = pip install {opts} {packages}
# cleanup is needed mostly for dev environmnts and assures that if dev
# is switching branch, no lefovers will impact execution.
# No git commands here because test should run even from a source archive.
commands =
{[tox]install_test_deps}
- find . -type f -name "*.pyc" -delete
- find . -type d -name "__pycache__" -delete
# test that we can call jjb using both variants with same results
bash {toxinidir}/tools/test-commands.sh
stestr run --slowest {posargs}
whitelist_externals =
bash
find
[testenv:tips]
# tests what happens with unreleased version of dependencies, like python-jenkins
install_command = pip install -U {opts} {packages}
commands =
bash -c "if [ -d {toxinidir}/../python-jenkins ]; then \
pip install -q -U -e 'git+file://{toxinidir}/../python-jenkins#egg=python-jenkins' ; else \
pip install -q -U -e 'git+https://git.openstack.org/openstack/python-jenkins@master#egg=python-jenkins' ; fi "
stestr run --slowest {posargs}
[testenv:cover]
setenv =
{[testenv]setenv}
PYTHON=coverage run --source jenkins_jobs --parallel-mode
commands =
{[tox]install_test_deps}
stestr run {posargs}
coverage combine
coverage html -d cover
coverage xml -o cover/coverage.xml
[testenv:linters]
basepython = python3
deps =
pre-commit>=1.12.0
commands =
python -m pre_commit run --all
# points to linters, kept only for developer convenience
[testenv:pep8]
envdir={toxworkdir}/linters
deps={[testenv:linters]deps}
commands = {[testenv:linters]commands}
[testenv:pyflakes]
deps = pyflakes
commands = pyflakes jenkins_jobs tests setup.py
[testenv:compare-xml-config]
commands = jenkins-jobs {posargs:test -o .test/run-conf/default/out/ .test/run-conf/config/}
[testenv:compare-xml-old]
commands = jenkins-jobs test -o .test/old/out/ .test/old/config/
[testenv:compare-xml-new]
commands = jenkins-jobs test -o .test/new/out/ .test/new/config/
[testenv:docs]
commands =
{[tox]install_test_deps}
sphinx-build -n -W -b html -d doc/build/doctrees doc/source doc/build/html
[testenv:docs-linkcheck]
# If you are behind a proxy, for this test to work you will need to set
# TOX_TESTENV_PASSENV="http_proxy https_proxy no_proxy ..." to pass
# through the proxy environment settings to be able to validate any urls.
commands =
{[tox]install_test_deps}
sphinx-build -n -W -b linkcheck -d doc/build/doctrees doc/source doc/build/linkcheck
[testenv:venv]
commands = {posargs}