openstack-ansible-os_neutron/tox.ini
James Denton 69845d63a0 Add integrated tests various Neutron deployment scenarios
This patchset implements an integrated test for various deployment
scenarios, both metal and lxc, where applicable. Some test cleanup
has been performed.

The basic server ops tempest test is also included. Expectations are that
the deployed cirros VM will be reachable behind a floating IP internally
for testing purposes (in most cases).

Depends-On: https://review.opendev.org/c/openstack/openstack-ansible/+/778008/
Change-Id: I0bdcdef7938183a82ca249f1c95592aea683cf98
2021-03-03 17:13:13 +00:00

132 lines
3.2 KiB
INI

[tox]
minversion = 2.0
skipsdist = True
envlist = docs,linters,functional
[testenv]
usedevelop = True
install_command =
pip install -c{env:TOX_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master} {opts} {packages}
commands =
/usr/bin/find . -type f -name "*.pyc" -delete
passenv =
COMMON_TESTS_PATH
HOME
http_proxy
HTTP_PROXY
https_proxy
HTTPS_PROXY
no_proxy
NO_PROXY
TESTING_BRANCH
TESTING_HOME
USER
whitelist_externals =
bash
setenv =
ANSIBLE_INVENTORY={toxinidir}/tests/lxb_inventory
PYTHONUNBUFFERED=1
ROLE_NAME=os_neutron
TEST_IDEMPOTENCE=false
VIRTUAL_ENV={envdir}
WORKING_DIR={toxinidir}
[testenv:docs]
basepython = python3
deps = -r{toxinidir}/doc/requirements.txt
commands =
bash -c "rm -rf doc/build"
sphinx-build -W --keep-going -b html doc/source doc/build/html
[testenv:pdf-docs]
basepython = python3
deps = {[testenv:docs]deps}
whitelist_externals =
make
commands =
sphinx-build -W --keep-going -b latex doc/source doc/build/pdf
make -C doc/build/pdf
[doc8]
# Settings for doc8:
extensions = .rst
[testenv:releasenotes]
basepython = python3
deps = -r{toxinidir}/doc/requirements.txt
commands =
sphinx-build -a -E -W -d releasenotes/build/doctrees --keep-going -b html releasenotes/source releasenotes/build/html
# environment used by the -infra templated docs job
[testenv:venv]
basepython = python3
commands =
{posargs}
[testenv:pep8]
basepython = python3
commands =
bash -c "{toxinidir}/tests/common/test-pep8.sh"
doc8 doc
[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]
basepython = python3
commands =
bash -c "{toxinidir}/tests/common/test-bashate.sh"
[testenv:ansible-syntax]
basepython = python3
commands =
bash -c "{toxinidir}/tests/common/test-ansible-syntax.sh"
[testenv:ansible-lint]
basepython = python3
commands =
bash -c "{toxinidir}/tests/common/test-ansible-lint.sh"
[testenv:functional]
basepython = python3
commands =
bash -c "{toxinidir}/tests/common/test-ansible-functional.sh"
[testenv:distro_install]
basepython = python3
setenv =
{[testenv]setenv}
ANSIBLE_PARAMETERS=-e @{toxinidir}/tests/common/test-distro_install-vars.yml
commands =
bash -c "{toxinidir}/tests/common/test-ansible-functional.sh"
[testenv:calico]
basepython = python3
setenv =
{[testenv]setenv}
ANSIBLE_INVENTORY={toxinidir}/tests/calico_inventory
ANSIBLE_OVERRIDES={toxinidir}/tests/neutron-overrides-calico.yml
commands =
bash -c "{toxinidir}/tests/common/test-ansible-functional.sh"
[testenv:linters]
basepython = python3
commands =
bash -c "{toxinidir}/tests/common/test-ansible-env-prep.sh"
{[testenv:pep8]commands}
{[testenv:bashate]commands}
{[testenv:ansible-lint]commands}
{[testenv:ansible-syntax]commands}
[testenv:nsx]
basepython = python3
setenv =
{[testenv]setenv}
ANSIBLE_INVENTORY={toxinidir}/tests/nsx_inventory
ANSIBLE_OVERRIDES={toxinidir}/tests/neutron-overrides-nsx.yml
commands =
bash -c "{toxinidir}/tests/common/test-ansible-functional.sh"