[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} {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 = PYTHONUNBUFFERED=1 ROLE_NAME=os_swift TEST_IDEMPOTENCE=false TEST_PLAYBOOK={toxinidir}/tests/test.yml {toxinidir}/tests/test-swift-functional.yml VIRTUAL_ENV={envdir} WORKING_DIR={toxinidir} [testenv:docs] deps = -r{toxinidir}/doc/requirements.txt commands= bash -c "rm -rf doc/build" doc8 doc sphinx-build -b html doc/source doc/build/html [doc8] # Settings for doc8: extensions = .rst [testenv:releasenotes] deps = -r{toxinidir}/doc/requirements.txt 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/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/common/test-bashate.sh" [testenv:ansible-syntax] commands = bash -c "{toxinidir}/tests/common/test-ansible-syntax.sh" [testenv:ansible-lint] commands = bash -c "{toxinidir}/tests/common/test-ansible-lint.sh" [testenv:functional] commands = bash -c "{toxinidir}/tests/common/test-ansible-functional.sh" [testenv:distro_install] setenv = {[testenv]setenv} # The test-swift-functional.yml requires tempest on the swift venv and # the distro scenario is not ready for that yet. TEST_PLAYBOOK={toxinidir}/tests/test.yml ANSIBLE_PARAMETERS=-e @{toxinidir}/tests/common/test-distro_install-vars.yml commands = bash -c "{toxinidir}/tests/common/test-ansible-functional.sh" [testenv:upgrade] setenv = {[testenv]setenv} CLONE_UPGRADE_TESTS=yes commands = bash -c "{toxinidir}/tests/test-swift-upgrades.sh" [testenv:func_pypy] setenv = {[testenv]setenv} ANSIBLE_INVENTORY={toxinidir}/tests/inventory_pypy ANSIBLE_OVERRIDES={toxinidir}/tests/os_swift-overrides-pypy.yml commands = bash -c "{toxinidir}/tests/common/test-ansible-functional.sh" [testenv:func_swift3] setenv = {[testenv]setenv} ANSIBLE_PARAMETERS=-vvv -e swift_swift3_enabled=True TEST_PLAYBOOK={toxinidir}/tests/test.yml {toxinidir}/tests/test-swift-functional.yml {toxinidir}/tests/test-swift3-functional.yml commands = bash -c "{toxinidir}/tests/common/test-ansible-functional.sh" [testenv:multi_reg] commands = bash -c "{toxinidir}/tests/test-swift-multi_reg.sh" [testenv:linters] 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}