summaryrefslogtreecommitdiff
path: root/tox.ini
blob: ef98e90096563908fde0a0b793d2795e17175caf (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
[tox]
envlist = pep8,py27
minversion = 1.6
skipsdist = True

[tempestenv]
sitepackages = False
setenv = VIRTUAL_ENV={envdir}
         OS_TEST_PATH=./tempest/test_discover
deps = setuptools
       -r{toxinidir}/requirements.txt

[testenv]
setenv = VIRTUAL_ENV={envdir}
         OS_TEST_PATH=./tempest/tests
usedevelop = True
install_command = pip install -U {opts} {packages}
whitelist_externals = *
deps = -r{toxinidir}/requirements.txt
       -r{toxinidir}/test-requirements.txt
commands =
         find . -type f -name "*.pyc" -delete
         bash tools/pretty_tox.sh '{posargs}'

[testenv:genconfig]
commands = oslo-config-generator --config-file tools/config/config-generator.tempest.conf

[testenv:cover]
setenv = OS_TEST_PATH=./tempest/tests
commands = python setup.py testr --coverage --testr-arg='tempest\.tests {posargs}'

[testenv:all]
sitepackages = {[tempestenv]sitepackages}
# 'all' includes slow tests
setenv = {[tempestenv]setenv}
         OS_TEST_TIMEOUT=1200
deps = {[tempestenv]deps}
commands =
  find . -type f -name "*.pyc" -delete
  bash tools/pretty_tox.sh '{posargs}'

[testenv:full]
sitepackages = {[tempestenv]sitepackages}
setenv = {[tempestenv]setenv}
deps = {[tempestenv]deps}
# The regex below is used to select which tests to run and exclude the slow tag:
# See the testrepostiory bug: https://bugs.launchpad.net/testrepository/+bug/1208610
commands =
  find . -type f -name "*.pyc" -delete
  bash tools/pretty_tox.sh '(?!.*\[.*\bslow\b.*\])(^tempest\.(api|scenario|thirdparty|cli)) {posargs}'

[testenv:full-serial]
sitepackages = {[tempestenv]sitepackages}
setenv = {[tempestenv]setenv}
deps = {[tempestenv]deps}
# The regex below is used to select which tests to run and exclude the slow tag:
# See the testrepostiory bug: https://bugs.launchpad.net/testrepository/+bug/1208610
commands =
  find . -type f -name "*.pyc" -delete
  bash tools/pretty_tox_serial.sh '(?!.*\[.*\bslow\b.*\])(^tempest\.(api|scenario|thirdparty|cli)) {posargs}'

[testenv:heat-slow]
sitepackages = {[tempestenv]sitepackages}
setenv = {[tempestenv]setenv}
         OS_TEST_TIMEOUT=1200
deps = {[tempestenv]deps}
# The regex below is used to select heat api/scenario tests tagged as slow.
commands =
  find . -type f -name "*.pyc" -delete
  bash tools/pretty_tox.sh '(?=.*\[.*\bslow\b.*\])(^tempest\.(api|scenario)\.orchestration) {posargs}'

[testenv:large-ops]
sitepackages = {[tempestenv]sitepackages}
setenv = {[tempestenv]setenv}
deps = {[tempestenv]deps}
commands =
  find . -type f -name "*.pyc" -delete
  python setup.py testr --slowest --testr-args='tempest.scenario.test_large_ops {posargs}'

[testenv:smoke]
sitepackages = {[tempestenv]sitepackages}
setenv = {[tempestenv]setenv}
deps = {[tempestenv]deps}
commands =
  find . -type f -name "*.pyc" -delete
   bash tools/pretty_tox.sh '(?!.*\[.*\bslow\b.*\])((smoke)|(^tempest\.scenario)) {posargs}'

[testenv:smoke-serial]
sitepackages = {[tempestenv]sitepackages}
setenv = {[tempestenv]setenv}
deps = {[tempestenv]deps}
# This is still serial because neutron doesn't work with parallel. See:
# https://bugs.launchpad.net/tempest/+bug/1216076 so the neutron smoke
# job would fail if we moved it to parallel.
commands =
  find . -type f -name "*.pyc" -delete
   bash tools/pretty_tox_serial.sh '(?!.*\[.*\bslow\b.*\])((smoke)|(^tempest\.scenario)) {posargs}'

[testenv:stress]
sitepackages = {[tempestenv]sitepackages}
setenv = {[tempestenv]setenv}
deps = {[tempestenv]deps}
commands =
    run-tempest-stress {posargs}

[testenv:venv]
commands = {posargs}

[testenv:docs]
commands = python setup.py build_sphinx {posargs}

[testenv:pep8]
commands =
   flake8 {posargs}
   {toxinidir}/tools/config/check_uptodate.sh
   python tools/check_uuid.py

[testenv:uuidgen]
commands =
   python tools/check_uuid.py --fix

[hacking]
local-check-factory = tempest.hacking.checks.factory
import_exceptions = tempest.services

[flake8]
# E125 is a won't fix until https://github.com/jcrocholl/pep8/issues/126 is resolved.  For further detail see https://review.openstack.org/#/c/36788/
# E123 skipped because it is ignored by default in the default pep8
# E129 skipped because it is too limiting when combined with other rules
# Skipped because of new hacking 0.9: H405
ignore = E125,E123,E129,H404,H405
show-source = True
exclude = .git,.venv,.tox,dist,doc,openstack,*egg