manila/tox.ini
Valeriy Ponomaryov 4ea9031b4f Make coverage tox job fail when test coverage was reduced
For the moment we can just calculate coverage and generate html with results.
It would be really useful to be able to get 'failure' by this job, when
latest commit introduced reduction of test coverage by any reason - either
addon of new code not covered with unit tests or deletion of existing unit
tests.
It will reduce total required efforts for code reviewers, that are forced now
to perform such check separately and inform about it committer.

Added file 'tools/cover.sh' is taken from OpenStack Rally project as
of state [1], with couple of fixes for satisfying 'bashate'.

Also add configuration file for coverage package.

[1] I7b4defe187c0631928d70bd09d7bcea956f4eed3

Change-Id: Ie0c5721985ae48256d9bb26af5fdb4b05797b359
2015-07-27 14:53:37 +03:00

67 lines
1.6 KiB
INI

[tox]
minversion = 1.6
skipsdist = True
envlist = py27,pep8
[testenv]
setenv = VIRTUAL_ENV={envdir}
usedevelop = True
install_command = pip install {opts} {packages}
deps = -r{toxinidir}/requirements.txt
-r{toxinidir}/test-requirements.txt
commands = python setup.py testr --testr-args='{posargs}'
[tox:jenkins]
downloadcache = ~/cache/pip
[testenv:pep8]
commands =
flake8 {posargs}
# Run bashate during pep8 runs to ensure violations are caught by
# the check and gate queues.
bashate tools/enable-pre-commit-hook.sh \
contrib/ci/pre_test_hook.sh \
contrib/ci/post_test_hook.sh \
devstack/plugin.sh \
tools/cover.sh \
run_tests.sh
[testenv:genconfig]
whitelist_externals = bash
commands =
oslo-config-generator --config-file etc/oslo-config-generator/manila.conf
[testenv:venv]
commands = {posargs}
[testenv:docs]
commands = python setup.py build_sphinx
[testenv:cover]
commands = {toxinidir}/tools/cover.sh {posargs}
[testenv:pylint]
deps = -r{toxinidir}/requirements.txt
pylint==0.26.0
whitelist_externals = bash
commands = bash tools/lintstack.sh
[testenv:lint]
deps = -r{toxinidir}/requirements.txt
pylint==0.26.0
commands = python tools/lintstack.py check
[flake8]
# Following checks are ignored on purpose:
#
# H904 wrap long lines in parentheses instead of a backslash
# reason: removed in hacking (https://review.openstack.org/#/c/101701/)
ignore = H904
builtins = _
exclude = .venv,.tox,dist,doc,openstack,*egg
[hacking]
import_exceptions =
manila.i18n
local-check-factory = manila.hacking.checks.factory