blob: e371406a9cca29f6a6e6ffc018d5f2bccf3e95e2 [file] [log] [blame]
Jay Pipesa6aa5f22012-07-24 19:40:29 -04001[tox]
lvdongbing768c8072015-12-01 22:38:57 -05002envlist = pep8,py34,py27
Ghanshyam3a59e1e2016-01-14 17:15:29 +09003minversion = 2.3.1
Matthew Treinish7228e112013-10-03 14:58:54 +00004skipsdist = True
Jay Pipesa6aa5f22012-07-24 19:40:29 -04005
Matthew Treinish5b7626a2014-09-23 17:39:38 -04006[tempestenv]
Joe Gordon9f1612e2015-01-28 11:23:43 -08007sitepackages = False
Masayuki Igawad81d3ce2016-04-20 15:00:54 +09008setenv =
9 VIRTUAL_ENV={envdir}
10 OS_TEST_PATH=./tempest/test_discover
11deps =
12 setuptools
13 -r{toxinidir}/requirements.txt
Matthew Treinish5b7626a2014-09-23 17:39:38 -040014
15[testenv]
Masayuki Igawad81d3ce2016-04-20 15:00:54 +090016setenv =
17 VIRTUAL_ENV={envdir}
18 OS_TEST_PATH=./tempest/tests
yan.haifeng658544f2015-06-12 14:41:41 +080019passenv = OS_STDOUT_CAPTURE OS_STDERR_CAPTURE OS_TEST_TIMEOUT OS_TEST_LOCK_PATH OS_TEST_PATH TEMPEST_CONFIG TEMPEST_CONFIG_DIR http_proxy HTTP_PROXY https_proxy HTTPS_PROXY no_proxy NO_PROXY
Matthew Treinish7228e112013-10-03 14:58:54 +000020usedevelop = True
Sean Daguea646d172014-02-20 18:50:41 -050021install_command = pip install -U {opts} {packages}
Matthew Treinish5b7626a2014-09-23 17:39:38 -040022whitelist_externals = *
Masayuki Igawad81d3ce2016-04-20 15:00:54 +090023deps =
24 -r{toxinidir}/requirements.txt
25 -r{toxinidir}/test-requirements.txt
Sean Daguec7b4d882014-11-25 08:18:23 -050026commands =
Masayuki Igawad81d3ce2016-04-20 15:00:54 +090027 find . -type f -name "*.pyc" -delete
28 bash tools/pretty_tox.sh '{posargs}'
Matthew Treinish12fdf4b2013-10-03 15:20:09 +000029
Jon Grimm270bd7f2014-08-05 18:11:29 +000030[testenv:genconfig]
David Paterson0bf52d42015-04-13 21:55:58 -040031commands = oslo-config-generator --config-file etc/config-generator.tempest.conf
Jon Grimm270bd7f2014-08-05 18:11:29 +000032
Matthew Treinishb2f5cad2014-01-07 21:54:55 +000033[testenv:cover]
34setenv = OS_TEST_PATH=./tempest/tests
35commands = python setup.py testr --coverage --testr-arg='tempest\.tests {posargs}'
36
Giampaolo Lauria7a3e0042013-06-07 14:59:19 -040037[testenv:all]
Matthew Treinish5b7626a2014-09-23 17:39:38 -040038sitepackages = {[tempestenv]sitepackages}
David Kranzf9695d22014-10-27 11:43:52 -040039# 'all' includes slow tests
Masayuki Igawad81d3ce2016-04-20 15:00:54 +090040setenv =
41 {[tempestenv]setenv}
42 OS_TEST_TIMEOUT={env:OS_TEST_TIMEOUT:1200}
Matthew Treinish5b7626a2014-09-23 17:39:38 -040043deps = {[tempestenv]deps}
Giampaolo Lauria7a3e0042013-06-07 14:59:19 -040044commands =
Masayuki Igawad81d3ce2016-04-20 15:00:54 +090045 find . -type f -name "*.pyc" -delete
46 bash tools/pretty_tox.sh '{posargs}'
Matthew Treinish87af1bb2013-06-17 15:29:10 -040047
Matthew Treinish3a9d3e72015-11-20 14:51:31 -050048[testenv:ostestr]
49sitepackages = {[tempestenv]sitepackages}
50# 'all' includes slow tests
51setenv =
52 {[tempestenv]setenv}
53 OS_TEST_TIMEOUT={env:OS_TEST_TIMEOUT:1200}
54deps = {[tempestenv]deps}
55commands =
56 find . -type f -name "*.pyc" -delete
57 ostestr {posargs}
58
Marc Kodererc2f9b3a2015-07-27 15:19:08 +020059[testenv:all-plugin]
60sitepackages = True
61# 'all' includes slow tests
Masayuki Igawad81d3ce2016-04-20 15:00:54 +090062setenv =
63 {[tempestenv]setenv}
64 OS_TEST_TIMEOUT={env:OS_TEST_TIMEOUT:1200}
Marc Kodererc2f9b3a2015-07-27 15:19:08 +020065deps = {[tempestenv]deps}
66commands =
Masayuki Igawad81d3ce2016-04-20 15:00:54 +090067 find . -type f -name "*.pyc" -delete
68 bash tools/pretty_tox.sh '{posargs}'
Marc Kodererc2f9b3a2015-07-27 15:19:08 +020069
Monty Taylor8d4c90c2013-05-02 14:33:18 -040070[testenv:full]
Matthew Treinish5b7626a2014-09-23 17:39:38 -040071sitepackages = {[tempestenv]sitepackages}
72setenv = {[tempestenv]setenv}
73deps = {[tempestenv]deps}
Matthew Treinish59eb0b22013-08-07 15:48:21 -040074# The regex below is used to select which tests to run and exclude the slow tag:
Masayuki Igawa83522042015-12-01 16:51:34 +090075# See the testrepository bug: https://bugs.launchpad.net/testrepository/+bug/1208610
Matthew Treinish83d2ec42013-07-30 16:37:32 -040076commands =
Masayuki Igawad81d3ce2016-04-20 15:00:54 +090077 find . -type f -name "*.pyc" -delete
78 bash tools/pretty_tox.sh '(?!.*\[.*\bslow\b.*\])(^tempest\.(api|scenario|thirdparty)) {posargs}'
Matthew Treinish83d2ec42013-07-30 16:37:32 -040079
Matthew Treinish99288cd2014-02-10 09:21:51 -050080[testenv:full-serial]
Matthew Treinish5b7626a2014-09-23 17:39:38 -040081sitepackages = {[tempestenv]sitepackages}
82setenv = {[tempestenv]setenv}
83deps = {[tempestenv]deps}
Matthew Treinish99288cd2014-02-10 09:21:51 -050084# The regex below is used to select which tests to run and exclude the slow tag:
Masayuki Igawa83522042015-12-01 16:51:34 +090085# See the testrepository bug: https://bugs.launchpad.net/testrepository/+bug/1208610
Matthew Treinish99288cd2014-02-10 09:21:51 -050086commands =
Masayuki Igawad81d3ce2016-04-20 15:00:54 +090087 find . -type f -name "*.pyc" -delete
88 bash tools/pretty_tox_serial.sh '(?!.*\[.*\bslow\b.*\])(^tempest\.(api|scenario|thirdparty)) {posargs}'
Matthew Treinish99288cd2014-02-10 09:21:51 -050089
Monty Taylor8d4c90c2013-05-02 14:33:18 -040090[testenv:smoke]
Matthew Treinish5b7626a2014-09-23 17:39:38 -040091sitepackages = {[tempestenv]sitepackages}
92setenv = {[tempestenv]setenv}
93deps = {[tempestenv]deps}
Monty Taylor8d4c90c2013-05-02 14:33:18 -040094commands =
Masayuki Igawad81d3ce2016-04-20 15:00:54 +090095 find . -type f -name "*.pyc" -delete
96 bash tools/pretty_tox.sh '\[.*\bsmoke\b.*\] {posargs}'
Monty Taylor8d4c90c2013-05-02 14:33:18 -040097
Joe Gordond2796292013-11-14 12:55:55 -080098[testenv:smoke-serial]
Matthew Treinish5b7626a2014-09-23 17:39:38 -040099sitepackages = {[tempestenv]sitepackages}
100setenv = {[tempestenv]setenv}
101deps = {[tempestenv]deps}
Joe Gordond2796292013-11-14 12:55:55 -0800102# This is still serial because neutron doesn't work with parallel. See:
103# https://bugs.launchpad.net/tempest/+bug/1216076 so the neutron smoke
104# job would fail if we moved it to parallel.
105commands =
Masayuki Igawad81d3ce2016-04-20 15:00:54 +0900106 find . -type f -name "*.pyc" -delete
107 bash tools/pretty_tox_serial.sh '\[.*\bsmoke\b.*\] {posargs}'
Joe Gordond2796292013-11-14 12:55:55 -0800108
Matthew Treinishcee11772013-07-02 17:50:41 -0400109[testenv:stress]
Matthew Treinish5b7626a2014-09-23 17:39:38 -0400110sitepackages = {[tempestenv]sitepackages}
111setenv = {[tempestenv]setenv}
112deps = {[tempestenv]deps}
Matthew Treinishcee11772013-07-02 17:50:41 -0400113commands =
David Kranz03fbe5c2014-11-11 15:29:00 -0500114 run-tempest-stress {posargs}
Matthew Treinishcee11772013-07-02 17:50:41 -0400115
Sean Dagueb56052b2013-05-21 17:57:41 -0400116[testenv:venv]
117commands = {posargs}
Sean Dagueb56052b2013-05-21 17:57:41 -0400118
Matthew Treinish8bd013e2014-06-18 21:58:32 -0400119[testenv:docs]
Mathew Oddenb389faa2015-07-30 20:24:08 +0000120commands =
Masayuki Igawad81d3ce2016-04-20 15:00:54 +0900121 python setup.py build_sphinx {posargs}
Matthew Treinish8bd013e2014-06-18 21:58:32 -0400122
Jay Pipesa6aa5f22012-07-24 19:40:29 -0400123[testenv:pep8]
Matthew Treinish3d468112013-10-24 21:49:14 +0000124commands =
Masayuki Igawad81d3ce2016-04-20 15:00:54 +0900125 flake8 {posargs}
126 check-uuid
Matthew Treinish3d468112013-10-24 21:49:14 +0000127
Chris Hoge7579c1a2015-02-26 14:12:15 -0800128[testenv:uuidgen]
129commands =
Masayuki Igawad81d3ce2016-04-20 15:00:54 +0900130 check-uuid --fix
Chris Hoge296558c2015-02-19 00:29:49 -0600131
Giampaolo Lauria1b837ce2013-05-01 11:22:07 -0400132[hacking]
Giampaolo Lauriad50c27d2013-05-23 15:23:12 -0400133local-check-factory = tempest.hacking.checks.factory
Matthew Treinish2b6db0c2014-05-17 10:42:36 -0400134import_exceptions = tempest.services
Giampaolo Lauria1b837ce2013-05-01 11:22:07 -0400135
Monty Taylorb2ca5ca2013-04-28 18:00:21 -0700136[flake8]
Joe Gordondca03dd2013-07-18 14:10:19 -0700137# 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/
Matthew Treinish96e9e882014-06-09 18:37:19 -0400138# E123 skipped because it is ignored by default in the default pep8
Matthew Treinish1d14c542014-06-17 20:25:40 -0400139# E129 skipped because it is too limiting when combined with other rules
Joe Gordon28788b42015-02-25 12:42:37 -0800140# Skipped because of new hacking 0.9: H405
Ken'ichi Ohmichi2e2ee192015-11-19 09:48:27 +0000141ignore = E125,E123,E129
Monty Taylorb2ca5ca2013-04-28 18:00:21 -0700142show-source = True
143exclude = .git,.venv,.tox,dist,doc,openstack,*egg
Andrea Frittoli (andreaf)897ecfb2016-02-23 10:12:48 -0500144
145[testenv:releasenotes]
146commands = sphinx-build -a -E -W -d releasenotes/build/doctrees -b html releasenotes/source releasenotes/build/html