961eaa7a8c
Many, many patches have gone into the master branch to enable the use of depends-on for role tests and to make use of the git clones put into place by zuul. This patch ensures that this functionality is now available for this branch too. The primary benefit for doing this would be to make use of the cached git clones provided by zuul to improve test reliability. The secondary benefit would be to have the ability to use depends-on to test patches together. However, this will come at the cost of requiring a tox configuration change, and the implementation of the tests/tests-repo-clone.sh and run_tests.sh scripts across all repositories. Change-Id: I6025f4a72a0e9368d709fbff9d319320e23a09da Depends-On: Ia806f19e00703c53f03a2420dbac1da4ba68db6c
124 lines
3.0 KiB
INI
124 lines
3.0 KiB
INI
[tox]
|
|
minversion = 2.0
|
|
skipsdist = True
|
|
envlist = docs,linters,functional
|
|
|
|
|
|
[testenv]
|
|
usedevelop = True
|
|
install_command =
|
|
pip install -c{env:UPPER_CONSTRAINTS_FILE:https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt?h=stable/ocata} {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
|
|
setenv =
|
|
PYTHONUNBUFFERED=1
|
|
ROLE_NAME=ceph_client
|
|
TEST_IDEMPOTENCE=false
|
|
VIRTUAL_ENV={envdir}
|
|
WORKING_DIR={toxinidir}
|
|
|
|
|
|
[testenv:docs]
|
|
commands=
|
|
bash -c "rm -rf doc/build"
|
|
doc8 doc
|
|
python setup.py build_sphinx
|
|
|
|
|
|
[doc8]
|
|
# Settings for doc8:
|
|
extensions = .rst
|
|
|
|
|
|
[testenv:releasenotes]
|
|
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]
|
|
commands =
|
|
{posargs}
|
|
|
|
|
|
[testenv:pep8]
|
|
commands =
|
|
bash -c "{toxinidir}/tests/tests-repo-clone.sh"
|
|
bash -c "{toxinidir}/tests/common/test-pep8.sh"
|
|
|
|
|
|
[flake8]
|
|
# Ignores the following rules due to how ansible modules work in general
|
|
# F403 'from ansible.module_utils.basic import *' used;
|
|
# unable to detect undefined names
|
|
ignore=F403
|
|
|
|
|
|
[testenv:bashate]
|
|
commands =
|
|
bash -c "{toxinidir}/tests/tests-repo-clone.sh"
|
|
bash -c "{toxinidir}/tests/common/test-bashate.sh"
|
|
|
|
|
|
# The deps URL should be set to the appropriate git URL.
|
|
# In the tests repo itself, the variable is uniquely set to
|
|
# the toxinidir so that the role is able to test itself, but
|
|
# the tox config is exactly the same as other repositories.
|
|
#
|
|
# The value for other repositories must be:
|
|
# http://git.openstack.org/cgit/openstack/openstack-ansible-tests/plain/test-ansible-deps.txt
|
|
# or for a stable branch:
|
|
# http://git.openstack.org/cgit/openstack/openstack-ansible-tests/plain/test-ansible-deps.txt?h=stable/ocata
|
|
[testenv:ansible]
|
|
deps =
|
|
{[testenv]deps}
|
|
-rhttps://git.openstack.org/cgit/openstack/openstack-ansible/plain/global-requirement-pins.txt?h=stable/ocata
|
|
-rhttps://git.openstack.org/cgit/openstack/openstack-ansible-tests/plain/test-ansible-deps.txt?h=stable/ocata
|
|
|
|
|
|
[testenv:ansible-syntax]
|
|
deps =
|
|
{[testenv:ansible]deps}
|
|
commands =
|
|
bash -c "{toxinidir}/tests/tests-repo-clone.sh"
|
|
bash -c "{toxinidir}/tests/common/test-ansible-syntax.sh"
|
|
|
|
|
|
[testenv:ansible-lint]
|
|
deps =
|
|
{[testenv:ansible]deps}
|
|
commands =
|
|
bash -c "{toxinidir}/tests/tests-repo-clone.sh"
|
|
bash -c "{toxinidir}/tests/common/test-ansible-lint.sh"
|
|
|
|
|
|
[testenv:functional]
|
|
deps =
|
|
{[testenv:ansible]deps}
|
|
commands =
|
|
bash -c "{toxinidir}/tests/tests-repo-clone.sh"
|
|
bash -c "{toxinidir}/tests/common/test-ansible-functional.sh"
|
|
|
|
|
|
[testenv:linters]
|
|
deps =
|
|
{[testenv:ansible]deps}
|
|
commands =
|
|
{[testenv:pep8]commands}
|
|
{[testenv:bashate]commands}
|
|
{[testenv:ansible-lint]commands}
|
|
{[testenv:ansible-syntax]commands}
|
|
{[testenv:docs]commands}
|