Add NSSI candidate
[optf/has.git] / conductor / tox.ini
1 [tox]
2 minversion = 1.6
3 skipsdist = True
4 #envlist = py35,py27,functional,pep8
5 envlist = py3,pep8,pep8diff
6 [testenv]
7 basepython=python3
8 deps = -r{toxinidir}/requirements.txt
9        -r{toxinidir}/test-requirements.txt
10 install_command = pip install --no-cache-dir -U {opts} {packages}
11 usedevelop = True
12 setenv = VIRTUAL_ENV={envdir}
13          OS_TEST_PATH=conductor/tests/unit
14 passenv = OS_TEST_TIMEOUT OS_STDOUT_CAPTURE OS_STDERR_CAPTURE OS_LOG_CAPTURE
15 commands =
16   coverage run --module pytest --junitxml xunit-results.xml
17   oslo-config-generator --config-file=etc/conductor/conductor-config-generator.conf
18 whitelist_externals = bash
19                       find
20
21 [testenv:functional]
22 setenv = VIRTUAL_ENV={envdir}
23          OS_TEST_PATH=conductor/tests/functional/
24 passenv = CONDUCTOR_*
25 commands =
26    bash -x {toxinidir}/run-functional-tests.sh "{posargs}"
27
28 [testenv:cover]
29 setenv = VIRTUAL_ENV={envdir}
30          LANGUAGE=en_US
31          OS_TEST_PATH=conductor/tests/unit
32          PYTHON=coverage run --source conductor --omit='*tests*' --parallel-mode
33 commands =
34    coverage erase
35    find . -type f -name "*.pyc" -delete
36    find . -type f -name ".coverage.*" -delete
37    coverage run --module pytest --junitxml xunit-results.xml
38    coverage html -d cover
39    coverage xml -o cover/coverage.xml
40    coverage report --omit=".tox/*","conductor/tests/*"
41
42 [testenv:pep8]
43 deps = hacking>=2.0.0
44 commands =
45   flake8 --exit-zero
46
47 [testenv:pep8diff]
48 deps = hacking>=2.0.0
49 commands =
50   bash -c "files=$(git diff HEAD^ HEAD --relative --diff-filter=d --name-only | grep -E '(^conductor\/)'| grep -E '*\.py$'); if [[ -z $files ]]; then exit 0; else flake8 $files; fi"
51
52 [testenv:genconfig]
53 commands = oslo-config-generator --config-file=etc/conductor/conductor-config-generator.conf
54
55 [testenv:venv]
56 commands = {posargs}
57 setenv = PYTHONHASHSEED=0
58
59 [testenv:debug]
60 commands = bash -x oslo_debug_helper {posargs}
61
62 [flake8]
63 select = E,H,W,F
64 max-line-length = 119
65 exclude = .venv,.git,.tox,dist,doc,*lib/python*,*egg,build,install-guide,*/tests/*
66 show-source = True
67 ignore= W503   #conflict with W504
68 per-file-ignores= conductor/data/plugins/inventory_provider/aai.py:F821
69
70 [hacking]
71 import_exceptions = conductor.common.i18n