glance_store/tox.ini

90 lines
2.7 KiB
INI

[tox]
minversion = 1.6
envlist = py35,py27,pep8
skipsdist = True
[testenv]
setenv = VIRTUAL_ENV={envdir}
usedevelop = True
deps =
-c{env:UPPER_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/stein}
-r{toxinidir}/requirements.txt
-r{toxinidir}/test-requirements.txt
passenv = OS_TEST_*
commands = stestr run --slowest {posargs}
[testenv:docs]
basepython = python3
deps = -r{toxinidir}/doc/requirements.txt
commands = sphinx-build -W -b html doc/source doc/build/html
[testenv:releasenotes]
basepython = python3
deps = -r{toxinidir}/doc/requirements.txt
commands = sphinx-build -a -E -W -d releasenotes/build/.doctrees -b html releasenotes/source releasenotes/build/html
[testenv:pep8]
basepython = python3
commands =
flake8 {posargs}
# Run security linter
# The following bandit tests are being skipped:
# B101 - Use of assert detected.
# B110 - Try, Except, Pass detected.
# B303 - Use of insecure MD2, MD4, or MD5 hash function.
bandit -r glance_store -x tests --skip B101,B110,B303
doc8 {posargs}
[testenv:bandit]
basepython = python3
# NOTE(browne): This is required for the integration test job of the bandit
# project. Please do not remove.
# The following bandit tests are being skipped:
# B101 - Use of assert detected.
# B110 - Try, Except, Pass detected.
# B303 - Use of insecure MD2, MD4, or MD5 hash function.
commands = bandit -r glance_store -x tests --skip B101,B110,B303
[testenv:cover]
basepython = python3
setenv =
PYTHON=coverage run --source glance_store --parallel-mode
commands =
stestr run {posargs}
coverage combine
coverage html -d cover
coverage xml -o cover/coverage.xml
[testenv:venv]
basepython = python3
commands = {posargs}
# See glance_store/tests/functional/README.rst for information on writing or
# running functional tests.
[testenv:functional-swift]
sitepackages = True
commands =
stestr run --slowest --test-path=./glance_store/tests/functional/swift
[testenv:functional-filesystem]
commands =
stestr run --slowest --test-path=./glance_store/tests/functional/filesystem
[doc8]
ignore-path = .venv,.git,.tox,*glance_store/locale*,*lib/python*,glance_store.egg*,doc/build,*requirements.txt,lower-constraints.txt
[flake8]
# TODO(dmllr): Analyze or fix the warnings blacklisted below
# H301 one import per line
# H404 multi line docstring should start with a summary
# H405 multi line docstring summary not separated with an empty line
ignore = H301,H404,H405
exclude = .venv,.git,.tox,dist,doc,etc,*glance_store/locale*,*lib/python*,*egg,build
[testenv:lower-constraints]
basepython = python3
deps =
-c{toxinidir}/lower-constraints.txt
-r{toxinidir}/test-requirements.txt
.[vmware,swift,cinder]