386176d77d
I created a tox PR[1] to add native support for constraints. The answer was basically "use deps". I tested it locally with shade and tox and it does indeed seem to do what we want. Use shade as a guinea pig before rolling this out wider. [1] https://github.com/tox-dev/tox/pull/642 Change-Id: I450dd513d7e1f881db764b11dcd6f9072c0c369c Depends-On: Id61ae52d48b28cfc2221cb556a1c1f7c6dfd60dd
83 lines
2.4 KiB
INI
83 lines
2.4 KiB
INI
[tox]
|
|
minversion = 1.6
|
|
envlist = py35,py27,pep8
|
|
skipsdist = True
|
|
|
|
[testenv]
|
|
usedevelop = True
|
|
passenv = UPPER_CONSTRAINTS_FILE
|
|
install_command = pip install -U {opts} {packages}
|
|
setenv =
|
|
VIRTUAL_ENV={envdir}
|
|
LANG=en_US.UTF-8
|
|
LANGUAGE=en_US:en
|
|
LC_ALL=C
|
|
deps =
|
|
-c{env:UPPER_CONSTRAINTS_FILE:https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt}
|
|
-r{toxinidir}/requirements.txt
|
|
-r{toxinidir}/test-requirements.txt
|
|
commands = stestr run {posargs}
|
|
stestr slowest
|
|
|
|
[testenv:functional]
|
|
basepython = {env:SHADE_TOX_PYTHON:python2}
|
|
passenv = OS_* SHADE_* UPPER_CONSTRAINTS_FILE
|
|
commands = stestr --test-path ./shade/tests/functional run --serial {posargs}
|
|
stestr slowest
|
|
|
|
[testenv:functional-tips]
|
|
basepython = {env:SHADE_TOX_PYTHON:python2}
|
|
passenv = OS_* SHADE_* UPPER_CONSTRAINTS_FILE
|
|
whitelist_externals = bash
|
|
commands =
|
|
bash -x {toxinidir}/extras/install-tips.sh
|
|
stestr --test-path ./shade/tests/functional run --serial {posargs}
|
|
stestr slowest
|
|
|
|
[testenv:pep8]
|
|
commands = flake8 shade
|
|
|
|
[testenv:venv]
|
|
commands = {posargs}
|
|
|
|
[testenv:debug]
|
|
whitelist_externals = find
|
|
commands =
|
|
find . -type f -name "*.pyc" -delete
|
|
oslo_debug_helper {posargs}
|
|
|
|
[testenv:cover]
|
|
setenv =
|
|
{[testenv]setenv}
|
|
PYTHON=coverage run --source shade --parallel-mode
|
|
commands =
|
|
stestr run {posargs}
|
|
coverage combine
|
|
coverage html -d cover
|
|
coverage xml -o cover/coverage.xml
|
|
|
|
[testenv:ansible]
|
|
# Need to pass some env vars for the Ansible playbooks
|
|
passenv = HOME USER
|
|
commands = {toxinidir}/extras/run-ansible-tests.sh -e {envdir} {posargs}
|
|
|
|
[testenv:docs]
|
|
skip_install = True
|
|
deps = -r{toxinidir}/test-requirements.txt
|
|
commands = python setup.py build_sphinx
|
|
|
|
[testenv:releasenotes]
|
|
commands = sphinx-build -a -E -W -d releasenotes/build/doctrees -b html releasenotes/source releasenotes/build/html
|
|
|
|
[flake8]
|
|
# The following are ignored on purpose - please do not submit patches to "fix"
|
|
# without first verifying with a core that fixing them is non-disruptive.
|
|
# H103 Is about the Apache license. It's strangely strict about the use of
|
|
# single vs double quotes in the license text. Fixing is not worth it
|
|
# H306 Is about alphabetical imports - there's a lot to fix
|
|
# H4 Are about docstrings - and there's just too many of them to fix
|
|
ignore = H103,H306,H4
|
|
show-source = True
|
|
builtins = _
|
|
exclude=.venv,.git,.tox,dist,doc,*lib/python*,*egg,build
|