
The lower-constraints test was removed because of an issue where pip could not correctly determine the required packages versions to install, ending in an almost infinite loop that would end up in timeout, failure, and general mayhem. Recently the issue has been fixed and, if properly configured, the lower-constraints test can provide good indication of which minimum versions are required to support the current code. This patch adds the test back to the current development branch, and it runs only on master. The lower-constraints file will stay in the future stable branches. Adjust min versions in requirements.txt accordingly. Change-Id: I3678c29fb090244f5e00208e4dcc8f1ad8a54ff5
100 lines
2.9 KiB
INI
100 lines
2.9 KiB
INI
[tox]
|
|
minversion = 3.18.0
|
|
envlist = py3,pep8
|
|
skipsdist = True
|
|
ignore_basepython_conflict=true
|
|
|
|
[testenv]
|
|
basepython = python3
|
|
setenv = VIRTUAL_ENV={envdir}
|
|
PYTHONDONTWRITEBYTECODE = 1
|
|
LANGUAGE=en_US
|
|
# .stestr.conf uses TESTS_DIR
|
|
TESTS_DIR=./ironicclient/tests/unit
|
|
usedevelop = True
|
|
install_command = pip install {opts} {packages}
|
|
deps =
|
|
-c{env:TOX_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master}
|
|
-r{toxinidir}/requirements.txt
|
|
-r{toxinidir}/test-requirements.txt
|
|
commands =
|
|
stestr run {posargs}
|
|
|
|
[testenv:releasenotes]
|
|
deps =
|
|
-c{env:TOX_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:pep8]
|
|
deps =
|
|
hacking>=3.1.0,<4.0.0 # Apache-2.0
|
|
doc8>=0.6.0 # Apache-2.0
|
|
flake8-import-order>=0.17.1 # LGPLv3
|
|
pycodestyle>=2.0.0,<2.7.0 # MIT
|
|
Pygments>=2.2.0 # BSD
|
|
commands =
|
|
flake8 {posargs}
|
|
doc8 doc/source CONTRIBUTING.rst README.rst
|
|
|
|
[testenv:cover]
|
|
setenv = {[testenv]setenv}
|
|
PYTHON=coverage run --source ironicclient --omit='*tests*' --parallel-mode
|
|
commands =
|
|
coverage erase
|
|
stestr run {posargs}
|
|
coverage combine
|
|
coverage report --omit='*tests*'
|
|
coverage html -d ./cover --omit='*tests*'
|
|
|
|
[testenv:venv]
|
|
deps =
|
|
-c{env:TOX_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master}
|
|
-r{toxinidir}/test-requirements.txt
|
|
-r{toxinidir}/requirements.txt
|
|
-r{toxinidir}/doc/requirements.txt
|
|
commands = {posargs}
|
|
|
|
[testenv:functionalpy3]
|
|
passenv = *
|
|
setenv = TESTS_DIR=./ironicclient/tests/functional
|
|
LANGUAGE=en_US
|
|
OS_TESTENV_NAME = {envname}
|
|
|
|
[testenv:docs]
|
|
deps =
|
|
-c{env:TOX_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master}
|
|
-r{toxinidir}/doc/requirements.txt
|
|
commands =
|
|
sphinx-build -W -b html doc/source doc/build/html
|
|
|
|
[testenv:pdf-docs]
|
|
allowlist_externals = make
|
|
deps = {[testenv:docs]deps}
|
|
commands =
|
|
sphinx-build -W -b latex doc/source doc/build/pdf
|
|
make -C doc/build/pdf
|
|
|
|
[flake8]
|
|
ignore = W503
|
|
exclude = .venv,.git,.tox,dist,doc,*lib/python*,*egg,build,tools
|
|
# [H106] Don't put vim configuration in source files.
|
|
# [H203] Use assertIs(Not)None to check for None.
|
|
# [H204] Use assert(Not)Equal to check for equality.
|
|
# [H205] Use assert(Greater|Less)(Equal) for comparison.
|
|
# [H210] Require 'autospec', 'spec', or 'spec_set' in mock.patch/mock.patch.object calls
|
|
# [H904] Delay string interpolations at logging calls.
|
|
enable-extensions=H106,H203,H204,H205,H210,H904
|
|
filename = *.py
|
|
import-order-style = pep8
|
|
application-import-names = ironicclient
|
|
|
|
[hacking]
|
|
import_exceptions = testtools.matchers, ironicclient.common.i18n
|
|
|
|
[testenv:lower-constraints]
|
|
deps =
|
|
-c{toxinidir}/lower-constraints.txt
|
|
-r{toxinidir}/test-requirements.txt
|
|
-r{toxinidir}/requirements.txt
|