senlin/tox.ini
tengqm 1120911e96 Fix tox.ini for docs venv
In 'docs' venv, we are using 'rm' command without specifying that 'bash'
should be provisioned in the venv. This patch fixes it thus removes the
warning when building docs.

Change-Id: I0ef63d930c007d7a479a32f55c273771f4e904e4
2016-07-30 19:52:13 -04:00

108 lines
2.9 KiB
INI

[tox]
minversion = 1.6
envlist = py35,py34,py27,pep8,functional
skipsdist = True
[testenv]
# Note the hash seed is set to 0 until senlin can be tested with a
# random hash seed successfully.
setenv = VIRTUAL_ENV={envdir}
PYTHONHASHSEED=0
OS_TEST_PATH=senlin/tests/unit
deps = -r{toxinidir}/test-requirements.txt
usedevelop = True
install_command = pip install {opts} {packages}
commands =
find . -type f -name "*.pyc" -delete
ostestr --slowest {posargs}
whitelist_externals = bash
find
[testenv:api]
setenv = VIRTUAL_ENV={envdir}
PYTHONHASHSEED=0
OS_TEST_PATH=senlin/tests/tempest/api
commands =
find . -type f -name "*.pyc" -delete
ostestr --slowest {posargs}
[testenv:functional]
setenv = VIRTUAL_ENV={envdir}
PYTHONHASHSEED=0
OS_TEST_PATH=senlin/tests/tempest/functional
# By default ostestr will set concurrency
# to ncpu, to specify something else use
# the concurrency=<n> option.
# call ie: 'tox -efunctional -- --concurrency=4'
commands =
find . -type f -name "*.pyc" -delete
ostestr --slowest {posargs}
[testenv:debug]
commands = oslo_debug_helper {posargs}
[testenv:debug-py27]
basepython = python2.7
commands = oslo_debug_helper {posargs}
[testenv:debug-py34]
basepython = python3.4
commands = oslo_debug_helper {posargs}
[testenv:debug-py35]
basepython = python3.5
commands = oslo_debug_helper {posargs}
[testenv:pep8]
commands =
flake8 senlin
# Check that .po and .pot files are valid:
bash -c "find senlin -type f -regex '.*\.pot?' -print0|xargs -0 -n 1 msgfmt --check-format -o /dev/null"
[testenv:genconfig]
envdir = {toxworkdir}/venv
commands =
{toxinidir}/tools/gen-config
[testenv:venv]
commands = {posargs}
[testenv:cover]
setenv = VIRTUAL_ENV={envdir}
commands = {toxinidir}/tools/cover.sh {posargs}
[testenv:docs]
deps = -r{toxinidir}/test-requirements.txt
sphinxcontrib-httpdomain
commands =
rm -rf doc/build api-ref/build
python setup.py build_sphinx
sphinx-build -W -b html api-ref/source api-ref/build/html
whitelist_externals = rm
[testenv:releasenotes]
commands = sphinx-build -a -E -W -d releasenotes/build/doctrees -b html releasenotes/source releasenotes/build/html
[testenv:api-ref]
# options below are needed by CI scripts for test and publish
# the install_command can be dropped when upstream infra supports constraints
install_command = pip install -U --force-reinstall {opts} {packages}
commands =
sphinx-build -W -b html -d api-ref/build/doctrees api-ref/source api-ref/build/html
[flake8]
# Temporarily disable complaints about docstring for public module/class/method
ignore = D100,D101,D102,D103,D104,D105,D200,D201,D202,D204,D205,D300,D301,D400,D401
show-source = true
exclude=.venv,.git,.tox,cover,dist,*lib/python*,*egg,tools,build,releasenotes
max-complexity=20
[hacking]
local-check-factory = senlin.hacking.checks.factory
import_exceptions = senlin.common.i18n