This will force pip install to use the upper-constraints.txt specified version of pip modules. When you don't do this, you are out on the bleeding edge and become unstable everytime some python library in the wide world changes in a way that you don't expect. Change-Id: I962329075b11d3790dc586ba33fe19fc64f1e4f9 Closes-Bug: #1563038
143 lines
4.2 KiB
INI
143 lines
4.2 KiB
INI
[tox]
|
|
minversion = 1.6
|
|
envlist = py34,py27,pep8
|
|
skipsdist = True
|
|
|
|
[testenv]
|
|
usedevelop = True
|
|
install_command =
|
|
constraints: {[testenv:common-constraints]install_command}
|
|
pip install -c{env:UPPER_CONSTRAINTS_FILE:https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt} -U {opts} {packages}
|
|
whitelist_externals = bash
|
|
find
|
|
setenv =
|
|
VIRTUAL_ENV={envdir}
|
|
deps = -r{toxinidir}/requirements.txt
|
|
-r{toxinidir}/test-requirements.txt
|
|
passenv = TEMPEST_* OS_TEST_*
|
|
commands =
|
|
find . -type f -name "*.pyc" -delete
|
|
bash tools/pretty_tox.sh '{posargs}'
|
|
|
|
[testenv:debug]
|
|
commands = oslo_debug_helper {posargs}
|
|
|
|
[testenv:debug-py27]
|
|
basepython = python2.7
|
|
commands = oslo_debug_helper {posargs}
|
|
|
|
[testenv:common-constraints]
|
|
install_command = pip install -c{env:UPPER_CONSTRAINTS_FILE:https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt} {opts} {packages}
|
|
|
|
[testenv:functional-api]
|
|
sitepackages = True
|
|
setenv = OS_TEST_PATH=./magnum/tests/functional/api
|
|
OS_TEST_TIMEOUT=7200
|
|
deps =
|
|
{[testenv]deps}
|
|
commands =
|
|
find . -type f -name "*.pyc" -delete
|
|
bash tools/pretty_tox.sh '{posargs}'
|
|
|
|
[testenv:functional-k8s]
|
|
sitepackages = True
|
|
setenv = OS_TEST_PATH=./magnum/tests/functional/k8s
|
|
OS_TEST_TIMEOUT=7200
|
|
deps =
|
|
{[testenv]deps}
|
|
commands =
|
|
find . -type f -name "*.pyc" -delete
|
|
bash tools/pretty_tox.sh '{posargs}'
|
|
|
|
[testenv:functional-swarm]
|
|
sitepackages = True
|
|
setenv = OS_TEST_PATH=./magnum/tests/functional/swarm
|
|
OS_TEST_TIMEOUT=7200
|
|
deps =
|
|
{[testenv]deps}
|
|
commands =
|
|
find . -type f -name "*.pyc" -delete
|
|
bash tools/pretty_tox.sh '{posargs}'
|
|
|
|
[testenv:functional-mesos]
|
|
sitepackages = True
|
|
setenv = OS_TEST_PATH=./magnum/tests/functional/mesos
|
|
OS_TEST_TIMEOUT=7200
|
|
deps =
|
|
{[testenv]deps}
|
|
commands =
|
|
find . -type f -name "*.pyc" -delete
|
|
bash tools/pretty_tox.sh '{posargs}'
|
|
|
|
[testenv:pep8]
|
|
commands =
|
|
doc8 -e .rst specs/ doc/source/ contrib/ CONTRIBUTING.rst HACKING.rst README.rst
|
|
bash tools/flake8wrap.sh {posargs}
|
|
bandit -r magnum -x tests -n5 -ll
|
|
|
|
[testenv:pep8-constraints]
|
|
install_command = {[testenv:common-constraints]install_command}
|
|
commands =
|
|
doc8 -e .rst specs/ doc/source/ contrib/ CONTRIBUTING.rst HACKING.rst README.rst
|
|
bash tools/flake8wrap.sh {posargs}
|
|
bandit -r magnum -x tests -n5 -ll
|
|
|
|
[testenv:venv]
|
|
commands = {posargs}
|
|
|
|
[testenv:venv-constraints]
|
|
install_command = {[testenv:common-constraints]install_command}
|
|
commands = {posargs}
|
|
|
|
[testenv:bandit]
|
|
deps = -r{toxinidir}/test-requirements.txt
|
|
commands = bandit -r magnum -x tests -n5 -ll
|
|
|
|
[testenv:bandit-constraints]
|
|
install_command = {[testenv:common-constraints]install_command}
|
|
deps = {[testenv:bandit]deps}
|
|
commands = {[testenv:bandit]commands}
|
|
|
|
[testenv:cover]
|
|
# NOTE(NiallBunting) Infra does not support constraints for the cover
|
|
# job. While the file is set no file is there. Can be removed once infra
|
|
# changes this.
|
|
install_command = pip install -U {opts} {packages}
|
|
commands = python setup.py testr --coverage --testr-args='{posargs}'
|
|
coverage report
|
|
|
|
[testenv:cover-constraints]
|
|
install_command = {[testenv:common-constraints]install_command}
|
|
commands = python setup.py testr --coverage --testr-args='{posargs}'
|
|
|
|
[testenv:docs]
|
|
# NOTE(NiallBunting) This is a post job. So upper constraints will not
|
|
# apply here.
|
|
install_command = pip install -U {opts} {packages}
|
|
commands =
|
|
doc8 -e .rst specs/ doc/source/ contrib/ CONTRIBUTING.rst HACKING.rst README.rst
|
|
python setup.py build_sphinx
|
|
|
|
[testenv:docs-constraints]
|
|
install_command = {[testenv:common-constraints]install_command}
|
|
commands = {[testenv:docs]commands}
|
|
|
|
[testenv:genconfig]
|
|
commands =
|
|
oslo-config-generator --config-file etc/magnum/magnum-config-generator.conf
|
|
|
|
[flake8]
|
|
exclude = .venv,.git,.tox,dist,doc,*lib/python*,*egg,build,tools,magnum/common/pythonk8sclient
|
|
|
|
[hacking]
|
|
local-check-factory = magnum.hacking.checks.factory
|
|
|
|
[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=magnum/tests/* magnum
|