[tox] minversion = 1.6 envlist = py35,py27,pep8 skipsdist = True [testenv] usedevelop = True basepython = {env:SHADE_TOX_PYTHON:python2} install_command = pip install -c{env:UPPER_CONSTRAINTS_FILE:https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt} {opts} {packages} setenv = VIRTUAL_ENV={envdir} LANG=en_US.UTF-8 LANGUAGE=en_US:en LC_ALL=C deps = -r{toxinidir}/test-requirements.txt commands = python setup.py testr --slowest --testr-args='{posargs}' [testenv:functional] setenv = OS_TEST_PATH = ./shade/tests/functional passenv = OS_* SHADE_* commands = python setup.py testr --slowest --testr-args='--concurrency=1 {posargs}' [testenv:functional-tips] setenv = OS_TEST_PATH = ./shade/tests/functional passenv = OS_* SHADE_* whitelist_externals = bash commands = bash -x {toxinidir}/extras/install-tips.sh python setup.py testr --slowest --testr-args='--concurrency=1 {posargs}' [testenv:pep8] commands = flake8 shade [testenv:venv] commands = {posargs} [testenv:cover] commands = python setup.py testr --coverage --testr-args='{posargs}' [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