Update tox configuration
In order to prepare for implementing requirements management by the OpenStack requirements management process, and to improve the reliability and effectiveness of test execution, this patch implements some changes to the tox configuration: - The minimum tox version is increased in order to be able to use constraints for the python packages. - The OpenStack upper-constraints are used when preparing the test venv for the linters checks. - Any proxy environment variables set on the test host are passed into the venv to enable testing from behind a proxy. - The docs test will clean-up an existing build directory before executing the docs build. - The releasenotes build cannot use upper-constraints at this point, so it doesn't. - The ansible test requirements are removed as they are not used for this repository at this time. Change-Id: I338eb58dfebe2ac03f7a81dd9e93b057f7e64f73
This commit is contained in:
parent
362bf84586
commit
a36f0a1e4e
@ -1,5 +1,3 @@
|
||||
ansible-lint<=2.3.9
|
||||
ansible>=1.9.1,<2.0.0,!=1.9.6
|
||||
bashate>=0.2 # Apache-2.0
|
||||
flake8>=2.5.4,<2.6.0 # MIT
|
||||
|
||||
|
46
tox.ini
46
tox.ini
@ -1,31 +1,59 @@
|
||||
[tox]
|
||||
minversion = 1.6
|
||||
minversion = 2.0
|
||||
skipsdist = True
|
||||
envlist = docs,linters
|
||||
envlist = docs,linters,functional
|
||||
|
||||
|
||||
[testenv]
|
||||
usedevelop = True
|
||||
install_command = pip install -U {opts} {packages}
|
||||
deps = -r{toxinidir}/test-requirements.txt
|
||||
commands = /usr/bin/find . -type f -name "*.pyc" -delete
|
||||
install_command =
|
||||
pip install -c{env:UPPER_CONSTRAINTS_FILE:https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt} {opts} {packages}
|
||||
deps =
|
||||
-r{toxinidir}/test-requirements.txt
|
||||
commands =
|
||||
/usr/bin/find . -type f -name "*.pyc" -delete
|
||||
passenv =
|
||||
HOME
|
||||
http_proxy
|
||||
HTTP_PROXY
|
||||
https_proxy
|
||||
HTTPS_PROXY
|
||||
no_proxy
|
||||
NO_PROXY
|
||||
whitelist_externals =
|
||||
bash
|
||||
git
|
||||
rm
|
||||
wget
|
||||
setenv =
|
||||
VIRTUAL_ENV={envdir}
|
||||
|
||||
|
||||
[testenv:docs]
|
||||
commands=
|
||||
bash -c "rm -rf doc/build"
|
||||
python setup.py build_sphinx
|
||||
|
||||
|
||||
[testenv:releasenotes]
|
||||
# NOTE(sdague): this target does not use constraints because
|
||||
# upstream infra does not yet support it. Once that's fixed, we can
|
||||
# drop the install_command.
|
||||
install_command =
|
||||
pip install -U --force-reinstall {opts} {packages}
|
||||
commands =
|
||||
sphinx-build -a -E -W -d releasenotes/build/doctrees -b html releasenotes/source releasenotes/build/html
|
||||
|
||||
|
||||
# environment used by the -infra templated docs job
|
||||
[testenv:venv]
|
||||
deps = -r{toxinidir}/test-requirements.txt
|
||||
commands = {posargs}
|
||||
# NOTE(jaegerandi): this target does not use constraints because
|
||||
# upstream infra does not yet support it. Once that's fixed, we can
|
||||
# drop the install_command.
|
||||
install_command =
|
||||
pip install -U --force-reinstall {opts} {packages}
|
||||
commands =
|
||||
{posargs}
|
||||
|
||||
|
||||
[testenv:pep8]
|
||||
@ -40,6 +68,7 @@ commands =
|
||||
--exclude-dir doc \
|
||||
{toxinidir} | xargs flake8 --verbose"
|
||||
|
||||
|
||||
[flake8]
|
||||
# Ignores the following rules due to how ansible modules work in general
|
||||
# F403 'from ansible.module_utils.basic import *' used;
|
||||
@ -69,6 +98,3 @@ commands =
|
||||
commands =
|
||||
{[testenv:pep8]commands}
|
||||
{[testenv:bashate]commands}
|
||||
|
||||
[testenv:releasenotes]
|
||||
commands = sphinx-build -a -E -d releasenotes/build/doctrees -b html releasenotes/source releasenotes/build/html
|
||||
|
Loading…
x
Reference in New Issue
Block a user