Jay Pipes | a6aa5f2 | 2012-07-24 19:40:29 -0400 | [diff] [blame] | 1 | [tox] |
Ghanshyam Mann | 87661fc | 2022-05-28 19:00:24 -0500 | [diff] [blame] | 2 | envlist = pep8,py39,bashate,pip-check-reqs |
Martin Kopec | dc84423 | 2020-12-24 15:57:53 +0000 | [diff] [blame] | 3 | minversion = 3.18.0 |
Ghanshyam | 1c680fd | 2020-01-20 11:43:29 -0600 | [diff] [blame] | 4 | ignore_basepython_conflict = True |
Jay Pipes | a6aa5f2 | 2012-07-24 19:40:29 -0400 | [diff] [blame] | 5 | |
Matthew Treinish | 5b7626a | 2014-09-23 17:39:38 -0400 | [diff] [blame] | 6 | [tempestenv] |
Lee Yarwood | bc9fe8e | 2020-01-28 21:27:59 +0000 | [diff] [blame] | 7 | basepython = python3 |
Joe Gordon | 9f1612e | 2015-01-28 11:23:43 -0800 | [diff] [blame] | 8 | sitepackages = False |
Masayuki Igawa | d81d3ce | 2016-04-20 15:00:54 +0900 | [diff] [blame] | 9 | setenv = |
| 10 | VIRTUAL_ENV={envdir} |
| 11 | OS_TEST_PATH=./tempest/test_discover |
Ghanshyam | 40b51c5 | 2020-01-19 19:31:11 -0600 | [diff] [blame] | 12 | OS_TEST_TIMEOUT={env:OS_TEST_TIMEOUT:1200} |
Masayuki Igawa | d81d3ce | 2016-04-20 15:00:54 +0900 | [diff] [blame] | 13 | deps = |
Ghanshyam Mann | 5c075cc | 2022-11-12 19:40:11 -0600 | [diff] [blame] | 14 | -c{env:UPPER_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master} |
Masayuki Igawa | d81d3ce | 2016-04-20 15:00:54 +0900 | [diff] [blame] | 15 | -r{toxinidir}/requirements.txt |
Matthew Treinish | 5b7626a | 2014-09-23 17:39:38 -0400 | [diff] [blame] | 16 | |
| 17 | [testenv] |
Ghanshyam | 1c680fd | 2020-01-20 11:43:29 -0600 | [diff] [blame] | 18 | basepython = python3 |
Masayuki Igawa | d81d3ce | 2016-04-20 15:00:54 +0900 | [diff] [blame] | 19 | setenv = |
| 20 | VIRTUAL_ENV={envdir} |
Andrea Frittoli | 8f018cb | 2017-08-11 14:36:18 +0100 | [diff] [blame] | 21 | OS_LOG_CAPTURE=1 |
Matthew Treinish | 5cc9289 | 2018-02-22 15:53:47 -0500 | [diff] [blame] | 22 | OS_STDOUT_CAPTURE=1 |
| 23 | OS_STDERR_CAPTURE=1 |
| 24 | OS_TEST_TIMEOUT=160 |
Stephen Finucane | a6353c4 | 2018-07-06 14:00:36 +0100 | [diff] [blame] | 25 | PYTHONWARNINGS=default::DeprecationWarning,ignore::DeprecationWarning:distutils,ignore::DeprecationWarning:site |
Ghanshyam Mann | ea6644c | 2022-12-24 19:00:35 -0800 | [diff] [blame] | 26 | passenv = |
| 27 | OS_STDOUT_CAPTURE |
| 28 | OS_STDERR_CAPTURE |
| 29 | OS_TEST_TIMEOUT |
| 30 | OS_TEST_LOCK_PATH |
| 31 | TEMPEST_CONFIG |
| 32 | TEMPEST_CONFIG_DIR |
| 33 | http_proxy |
| 34 | HTTP_PROXY |
| 35 | https_proxy |
| 36 | HTTPS_PROXY |
| 37 | no_proxy |
| 38 | NO_PROXY |
| 39 | ZUUL_CACHE_DIR |
| 40 | REQUIREMENTS_PIP_LOCATION |
| 41 | GENERATE_TEMPEST_PLUGIN_LIST |
Matthew Treinish | 7228e11 | 2013-10-03 14:58:54 +0000 | [diff] [blame] | 42 | usedevelop = True |
Clark Boylan | a673bd9 | 2022-11-22 09:30:23 -0800 | [diff] [blame] | 43 | allowlist_externals = |
| 44 | find |
Masayuki Igawa | d81d3ce | 2016-04-20 15:00:54 +0900 | [diff] [blame] | 45 | deps = |
Ghanshyam Mann | 5c075cc | 2022-11-12 19:40:11 -0600 | [diff] [blame] | 46 | -c{env:UPPER_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master} |
Masayuki Igawa | d81d3ce | 2016-04-20 15:00:54 +0900 | [diff] [blame] | 47 | -r{toxinidir}/requirements.txt |
| 48 | -r{toxinidir}/test-requirements.txt |
Sean Dague | c7b4d88 | 2014-11-25 08:18:23 -0500 | [diff] [blame] | 49 | commands = |
Masayuki Igawa | d81d3ce | 2016-04-20 15:00:54 +0900 | [diff] [blame] | 50 | find . -type f -name "*.pyc" -delete |
Masayuki Igawa | d0b8ebd | 2017-09-14 14:51:25 -0600 | [diff] [blame] | 51 | stestr --test-path ./tempest/tests run {posargs} |
Matthew Treinish | 12fdf4b | 2013-10-03 15:20:09 +0000 | [diff] [blame] | 52 | |
Jon Grimm | 270bd7f | 2014-08-05 18:11:29 +0000 | [diff] [blame] | 53 | [testenv:genconfig] |
Matthew Treinish | bdef1c7 | 2016-06-21 18:06:49 -0400 | [diff] [blame] | 54 | commands = oslo-config-generator --config-file tempest/cmd/config-generator.tempest.conf |
Jon Grimm | 270bd7f | 2014-08-05 18:11:29 +0000 | [diff] [blame] | 55 | |
Matthew Treinish | b2f5cad | 2014-01-07 21:54:55 +0000 | [diff] [blame] | 56 | [testenv:cover] |
Matthew Treinish | 069d828 | 2017-11-28 19:19:27 -0500 | [diff] [blame] | 57 | setenv = |
| 58 | {[testenv]setenv} |
| 59 | PYTHON=coverage run --source tempest --parallel-mode |
| 60 | commands = |
| 61 | coverage erase |
| 62 | find . -type f -name "*.pyc" -delete |
| 63 | stestr --test-path ./tempest/tests run {posargs} |
| 64 | coverage combine |
| 65 | coverage html -d cover |
| 66 | coverage xml -o cover/coverage.xml |
| 67 | coverage report |
Matthew Treinish | b2f5cad | 2014-01-07 21:54:55 +0000 | [diff] [blame] | 68 | |
Manik Bindlish | 8a7aaa5 | 2018-11-30 10:22:30 +0000 | [diff] [blame] | 69 | [testenv:debug] |
Manik Bindlish | 8a7aaa5 | 2018-11-30 10:22:30 +0000 | [diff] [blame] | 70 | commands = oslo_debug_helper -t tempest/tests {posargs} |
| 71 | |
Giampaolo Lauria | 7a3e004 | 2013-06-07 14:59:19 -0400 | [diff] [blame] | 72 | [testenv:all] |
Matthew Treinish | 0e25a90 | 2016-04-29 16:38:51 -0400 | [diff] [blame] | 73 | envdir = .tox/tempest |
Matthew Treinish | 5b7626a | 2014-09-23 17:39:38 -0400 | [diff] [blame] | 74 | sitepackages = {[tempestenv]sitepackages} |
Ghanshyam | 1c680fd | 2020-01-20 11:43:29 -0600 | [diff] [blame] | 75 | basepython = {[tempestenv]basepython} |
David Kranz | f9695d2 | 2014-10-27 11:43:52 -0400 | [diff] [blame] | 76 | # 'all' includes slow tests |
Masayuki Igawa | d81d3ce | 2016-04-20 15:00:54 +0900 | [diff] [blame] | 77 | setenv = |
| 78 | {[tempestenv]setenv} |
Matthew Treinish | 5b7626a | 2014-09-23 17:39:38 -0400 | [diff] [blame] | 79 | deps = {[tempestenv]deps} |
Giampaolo Lauria | 7a3e004 | 2013-06-07 14:59:19 -0400 | [diff] [blame] | 80 | commands = |
Masayuki Igawa | d81d3ce | 2016-04-20 15:00:54 +0900 | [diff] [blame] | 81 | find . -type f -name "*.pyc" -delete |
Masayuki Igawa | fe0de68 | 2019-05-21 17:04:28 +0900 | [diff] [blame] | 82 | tempest run --regex {posargs:''} |
Matthew Treinish | 87af1bb | 2013-06-17 15:29:10 -0400 | [diff] [blame] | 83 | |
Marc Koderer | c2f9b3a | 2015-07-27 15:19:08 +0200 | [diff] [blame] | 84 | [testenv:all-plugin] |
Andrea Frittoli | 35d12ca | 2018-02-13 15:42:25 +0000 | [diff] [blame] | 85 | # DEPRECATED |
| 86 | # NOTE(andreaf) The all-plugin tox env uses sitepackages |
| 87 | # so that plugins installed outsite of Tempest virtual environment |
| 88 | # can be discovered. After the implementation during the Queens |
| 89 | # release cycle of the goal of moving Tempest plugins in dedicated |
| 90 | # git repos, this environment should not be used anymore. "all" |
| 91 | # should be used instead with the appropriate regex filtering. |
| 92 | sitepackages = True |
| 93 | # 'all' includes slow tests |
| 94 | setenv = |
| 95 | {[tempestenv]setenv} |
Ghanshyam | 1c680fd | 2020-01-20 11:43:29 -0600 | [diff] [blame] | 96 | basepython = {[tempestenv]basepython} |
Andrea Frittoli | 35d12ca | 2018-02-13 15:42:25 +0000 | [diff] [blame] | 97 | deps = {[tempestenv]deps} |
| 98 | commands = |
| 99 | echo "WARNING: The all-plugin env is deprecated and will be removed" |
| 100 | echo "WARNING Please use the 'all' environment for Tempest plugins." |
| 101 | find . -type f -name "*.pyc" -delete |
Masayuki Igawa | fe0de68 | 2019-05-21 17:04:28 +0900 | [diff] [blame] | 102 | tempest run --regex {posargs:''} |
Andrea Frittoli | 35d12ca | 2018-02-13 15:42:25 +0000 | [diff] [blame] | 103 | |
| 104 | [testenv:all-site-packages] |
Marc Koderer | c2f9b3a | 2015-07-27 15:19:08 +0200 | [diff] [blame] | 105 | sitepackages = True |
| 106 | # 'all' includes slow tests |
Masayuki Igawa | d81d3ce | 2016-04-20 15:00:54 +0900 | [diff] [blame] | 107 | setenv = |
| 108 | {[tempestenv]setenv} |
Ghanshyam | 1c680fd | 2020-01-20 11:43:29 -0600 | [diff] [blame] | 109 | basepython = {[tempestenv]basepython} |
Marc Koderer | c2f9b3a | 2015-07-27 15:19:08 +0200 | [diff] [blame] | 110 | deps = {[tempestenv]deps} |
| 111 | commands = |
Masayuki Igawa | d81d3ce | 2016-04-20 15:00:54 +0900 | [diff] [blame] | 112 | find . -type f -name "*.pyc" -delete |
Masayuki Igawa | fe0de68 | 2019-05-21 17:04:28 +0900 | [diff] [blame] | 113 | tempest run --regex {posargs:''} |
Marc Koderer | c2f9b3a | 2015-07-27 15:19:08 +0200 | [diff] [blame] | 114 | |
Monty Taylor | 8d4c90c | 2013-05-02 14:33:18 -0400 | [diff] [blame] | 115 | [testenv:full] |
Matthew Treinish | 0e25a90 | 2016-04-29 16:38:51 -0400 | [diff] [blame] | 116 | envdir = .tox/tempest |
Matthew Treinish | 5b7626a | 2014-09-23 17:39:38 -0400 | [diff] [blame] | 117 | sitepackages = {[tempestenv]sitepackages} |
Ghanshyam | 1c680fd | 2020-01-20 11:43:29 -0600 | [diff] [blame] | 118 | basepython = {[tempestenv]basepython} |
Matthew Treinish | 5b7626a | 2014-09-23 17:39:38 -0400 | [diff] [blame] | 119 | setenv = {[tempestenv]setenv} |
| 120 | deps = {[tempestenv]deps} |
Matthew Treinish | 59eb0b2 | 2013-08-07 15:48:21 -0400 | [diff] [blame] | 121 | # The regex below is used to select which tests to run and exclude the slow tag: |
Masayuki Igawa | 8352204 | 2015-12-01 16:51:34 +0900 | [diff] [blame] | 122 | # See the testrepository bug: https://bugs.launchpad.net/testrepository/+bug/1208610 |
Martin Kopec | dc84423 | 2020-12-24 15:57:53 +0000 | [diff] [blame] | 123 | # FIXME: We can replace it with the `--exclude-regex` option to exclude tests now. |
Matthew Treinish | 83d2ec4 | 2013-07-30 16:37:32 -0400 | [diff] [blame] | 124 | commands = |
Masayuki Igawa | d81d3ce | 2016-04-20 15:00:54 +0900 | [diff] [blame] | 125 | find . -type f -name "*.pyc" -delete |
Sean Dague | 49505df | 2017-03-01 11:35:58 -0500 | [diff] [blame] | 126 | tempest run --regex '(?!.*\[.*\bslow\b.*\])(^tempest\.api)' {posargs} |
Balazs Gibizer | dfb3043 | 2021-12-14 17:25:16 +0100 | [diff] [blame] | 127 | tempest run --combine --serial --regex '(?!.*\[.*\bslow\b.*\])(^tempest\.scenario)|(^tempest\.serial_tests)' {posargs} |
Matthew Treinish | 83d2ec4 | 2013-07-30 16:37:32 -0400 | [diff] [blame] | 128 | |
Attila Fazekas | 3f219f5 | 2018-03-01 16:50:10 +0000 | [diff] [blame] | 129 | [testenv:full-parallel] |
| 130 | envdir = .tox/tempest |
| 131 | sitepackages = {[tempestenv]sitepackages} |
Ghanshyam | 1c680fd | 2020-01-20 11:43:29 -0600 | [diff] [blame] | 132 | basepython = {[tempestenv]basepython} |
Attila Fazekas | 3f219f5 | 2018-03-01 16:50:10 +0000 | [diff] [blame] | 133 | setenv = {[tempestenv]setenv} |
| 134 | deps = {[tempestenv]deps} |
Lukas Piwowarski | f047361 | 2023-01-20 10:01:19 +0000 | [diff] [blame] | 135 | regex = '(^tempest\.scenario.*)|(^tempest\.serial_tests)|(?!.*\[.*\bslow\b.*\])(^tempest\.api)' |
Attila Fazekas | 3f219f5 | 2018-03-01 16:50:10 +0000 | [diff] [blame] | 136 | # The regex below is used to select all tempest scenario and including the non slow api tests |
| 137 | commands = |
| 138 | find . -type f -name "*.pyc" -delete |
Lukas Piwowarski | f047361 | 2023-01-20 10:01:19 +0000 | [diff] [blame] | 139 | tempest run --regex {[testenv:full-parallel]regex} {posargs} |
Attila Fazekas | 3f219f5 | 2018-03-01 16:50:10 +0000 | [diff] [blame] | 140 | |
Ghanshyam Mann | ba28d78 | 2021-09-03 10:21:54 -0500 | [diff] [blame] | 141 | [testenv:api-microversion-tests] |
| 142 | envdir = .tox/tempest |
| 143 | sitepackages = {[tempestenv]sitepackages} |
| 144 | basepython = {[tempestenv]basepython} |
| 145 | setenv = {[tempestenv]setenv} |
| 146 | deps = {[tempestenv]deps} |
Lukas Piwowarski | f047361 | 2023-01-20 10:01:19 +0000 | [diff] [blame] | 147 | regex = '(^tempest\.api\.compute)|(^tempest\.api\.volume)' |
Ghanshyam Mann | ba28d78 | 2021-09-03 10:21:54 -0500 | [diff] [blame] | 148 | # The regex below is used to select all tempest api tests for services having API |
| 149 | # microversion concept. |
| 150 | commands = |
| 151 | find . -type f -name "*.pyc" -delete |
Lukas Piwowarski | f047361 | 2023-01-20 10:01:19 +0000 | [diff] [blame] | 152 | tempest run --regex {[testenv:api-microversion-tests]regex} {posargs} |
Ghanshyam Mann | ba28d78 | 2021-09-03 10:21:54 -0500 | [diff] [blame] | 153 | |
Ghanshyam | 5072a24 | 2019-07-03 14:40:53 +0000 | [diff] [blame] | 154 | [testenv:integrated-network] |
| 155 | envdir = .tox/tempest |
| 156 | sitepackages = {[tempestenv]sitepackages} |
Ghanshyam | 1c680fd | 2020-01-20 11:43:29 -0600 | [diff] [blame] | 157 | basepython = {[tempestenv]basepython} |
Ghanshyam | 5072a24 | 2019-07-03 14:40:53 +0000 | [diff] [blame] | 158 | setenv = {[tempestenv]setenv} |
| 159 | deps = {[tempestenv]deps} |
Lukas Piwowarski | f047361 | 2023-01-20 10:01:19 +0000 | [diff] [blame] | 160 | regex1 = '(?!.*\[.*\bslow\b.*\])(^tempest\.api)' |
| 161 | regex2 = '(?!.*\[.*\bslow\b.*\])(^tempest\.scenario)|(^tempest\.serial_tests)' |
Ghanshyam | 5072a24 | 2019-07-03 14:40:53 +0000 | [diff] [blame] | 162 | # The regex below is used to select which tests to run and exclude the slow tag and |
Martin Kopec | dc84423 | 2020-12-24 15:57:53 +0000 | [diff] [blame] | 163 | # tests listed in exclude-list file: |
Ghanshyam | 5072a24 | 2019-07-03 14:40:53 +0000 | [diff] [blame] | 164 | commands = |
| 165 | find . -type f -name "*.pyc" -delete |
Lukas Piwowarski | f047361 | 2023-01-20 10:01:19 +0000 | [diff] [blame] | 166 | tempest run --regex {[testenv:integrated-network]regex1} --exclude-list ./tools/tempest-integrated-gate-networking-exclude-list.txt {posargs} |
| 167 | tempest run --combine --serial --regex {[testenv:integrated-network]regex2} --exclude-list ./tools/tempest-integrated-gate-networking-exclude-list.txt {posargs} |
Ghanshyam | 5072a24 | 2019-07-03 14:40:53 +0000 | [diff] [blame] | 168 | |
Ghanshyam | ee7fd1f | 2019-07-05 09:36:57 +0000 | [diff] [blame] | 169 | [testenv:integrated-compute] |
| 170 | envdir = .tox/tempest |
| 171 | sitepackages = {[tempestenv]sitepackages} |
Ghanshyam | 1c680fd | 2020-01-20 11:43:29 -0600 | [diff] [blame] | 172 | basepython = {[tempestenv]basepython} |
Ghanshyam | ee7fd1f | 2019-07-05 09:36:57 +0000 | [diff] [blame] | 173 | setenv = {[tempestenv]setenv} |
| 174 | deps = {[tempestenv]deps} |
Lukas Piwowarski | f047361 | 2023-01-20 10:01:19 +0000 | [diff] [blame] | 175 | regex1 = '(?!.*\[.*\bslow\b.*\])(^tempest\.api)' |
| 176 | regex2 = '(?!.*\[.*\bslow\b.*\])(^tempest\.scenario)|(^tempest\.serial_tests)' |
Ghanshyam | ee7fd1f | 2019-07-05 09:36:57 +0000 | [diff] [blame] | 177 | # The regex below is used to select which tests to run and exclude the slow tag and |
Martin Kopec | dc84423 | 2020-12-24 15:57:53 +0000 | [diff] [blame] | 178 | # tests listed in exclude-list file: |
Ghanshyam | ee7fd1f | 2019-07-05 09:36:57 +0000 | [diff] [blame] | 179 | commands = |
| 180 | find . -type f -name "*.pyc" -delete |
Lukas Piwowarski | f047361 | 2023-01-20 10:01:19 +0000 | [diff] [blame] | 181 | tempest run --regex {[testenv:integrated-compute]regex1} --exclude-list ./tools/tempest-integrated-gate-compute-exclude-list.txt {posargs} |
| 182 | tempest run --combine --serial --regex {[testenv:integrated-compute]regex2} --exclude-list ./tools/tempest-integrated-gate-compute-exclude-list.txt {posargs} |
Ghanshyam | ee7fd1f | 2019-07-05 09:36:57 +0000 | [diff] [blame] | 183 | |
Ghanshyam | 31609dc | 2019-07-05 09:23:37 +0000 | [diff] [blame] | 184 | [testenv:integrated-placement] |
| 185 | envdir = .tox/tempest |
| 186 | sitepackages = {[tempestenv]sitepackages} |
Ghanshyam | 1c680fd | 2020-01-20 11:43:29 -0600 | [diff] [blame] | 187 | basepython = {[tempestenv]basepython} |
Ghanshyam | 31609dc | 2019-07-05 09:23:37 +0000 | [diff] [blame] | 188 | setenv = {[tempestenv]setenv} |
| 189 | deps = {[tempestenv]deps} |
Lukas Piwowarski | f047361 | 2023-01-20 10:01:19 +0000 | [diff] [blame] | 190 | regex1 = '(?!.*\[.*\bslow\b.*\])(^tempest\.api)' |
| 191 | regex2 = '(?!.*\[.*\bslow\b.*\])(^tempest\.scenario)|(^tempest\.serial_tests)' |
Ghanshyam | 31609dc | 2019-07-05 09:23:37 +0000 | [diff] [blame] | 192 | # The regex below is used to select which tests to run and exclude the slow tag and |
Martin Kopec | dc84423 | 2020-12-24 15:57:53 +0000 | [diff] [blame] | 193 | # tests listed in exclude-list file: |
Ghanshyam | 31609dc | 2019-07-05 09:23:37 +0000 | [diff] [blame] | 194 | commands = |
| 195 | find . -type f -name "*.pyc" -delete |
Lukas Piwowarski | f047361 | 2023-01-20 10:01:19 +0000 | [diff] [blame] | 196 | tempest run --regex {[testenv:integrated-placement]regex1} --exclude-list ./tools/tempest-integrated-gate-placement-exclude-list.txt {posargs} |
| 197 | tempest run --combine --serial --regex {[testenv:integrated-placement]regex2} --exclude-list ./tools/tempest-integrated-gate-placement-exclude-list.txt {posargs} |
Ghanshyam | 31609dc | 2019-07-05 09:23:37 +0000 | [diff] [blame] | 198 | |
Ghanshyam Mann | a699445 | 2019-07-05 08:43:23 +0000 | [diff] [blame] | 199 | [testenv:integrated-storage] |
| 200 | envdir = .tox/tempest |
| 201 | sitepackages = {[tempestenv]sitepackages} |
Ghanshyam | 1c680fd | 2020-01-20 11:43:29 -0600 | [diff] [blame] | 202 | basepython = {[tempestenv]basepython} |
Ghanshyam Mann | a699445 | 2019-07-05 08:43:23 +0000 | [diff] [blame] | 203 | setenv = {[tempestenv]setenv} |
| 204 | deps = {[tempestenv]deps} |
Lukas Piwowarski | f047361 | 2023-01-20 10:01:19 +0000 | [diff] [blame] | 205 | regex1 = '(?!.*\[.*\bslow\b.*\])(^tempest\.api)' |
| 206 | regex2 = '(?!.*\[.*\bslow\b.*\])(^tempest\.scenario)|(^tempest\.serial_tests)' |
Ghanshyam Mann | a699445 | 2019-07-05 08:43:23 +0000 | [diff] [blame] | 207 | # The regex below is used to select which tests to run and exclude the slow tag and |
Martin Kopec | dc84423 | 2020-12-24 15:57:53 +0000 | [diff] [blame] | 208 | # tests listed in exclude-list file: |
Ghanshyam Mann | a699445 | 2019-07-05 08:43:23 +0000 | [diff] [blame] | 209 | commands = |
| 210 | find . -type f -name "*.pyc" -delete |
Lukas Piwowarski | f047361 | 2023-01-20 10:01:19 +0000 | [diff] [blame] | 211 | tempest run --regex {[testenv:integrated-storage]regex1} --exclude-list ./tools/tempest-integrated-gate-storage-exclude-list.txt {posargs} |
| 212 | tempest run --combine --serial --regex {[testenv:integrated-storage]regex2} --exclude-list ./tools/tempest-integrated-gate-storage-exclude-list.txt {posargs} |
Ghanshyam Mann | a699445 | 2019-07-05 08:43:23 +0000 | [diff] [blame] | 213 | |
Ghanshyam | 9535852 | 2019-07-05 08:58:32 +0000 | [diff] [blame] | 214 | [testenv:integrated-object-storage] |
| 215 | envdir = .tox/tempest |
| 216 | sitepackages = {[tempestenv]sitepackages} |
Ghanshyam | 1c680fd | 2020-01-20 11:43:29 -0600 | [diff] [blame] | 217 | basepython = {[tempestenv]basepython} |
Ghanshyam | 9535852 | 2019-07-05 08:58:32 +0000 | [diff] [blame] | 218 | setenv = {[tempestenv]setenv} |
| 219 | deps = {[tempestenv]deps} |
Lukas Piwowarski | f047361 | 2023-01-20 10:01:19 +0000 | [diff] [blame] | 220 | regex1 = '(?!.*\[.*\bslow\b.*\])(^tempest\.api)' |
| 221 | regex2 = '(?!.*\[.*\bslow\b.*\])(^tempest\.scenario)|(^tempest\.serial_tests)' |
Ghanshyam | 9535852 | 2019-07-05 08:58:32 +0000 | [diff] [blame] | 222 | # The regex below is used to select which tests to run and exclude the slow tag and |
Martin Kopec | dc84423 | 2020-12-24 15:57:53 +0000 | [diff] [blame] | 223 | # tests listed in exclude-list file: |
Ghanshyam | 9535852 | 2019-07-05 08:58:32 +0000 | [diff] [blame] | 224 | commands = |
| 225 | find . -type f -name "*.pyc" -delete |
Lukas Piwowarski | f047361 | 2023-01-20 10:01:19 +0000 | [diff] [blame] | 226 | tempest run --regex {[testenv:integrated-object-storage]regex1} --exclude-list ./tools/tempest-integrated-gate-object-storage-exclude-list.txt {posargs} |
| 227 | tempest run --combine --serial --regex {[testenv:integrated-object-storage]regex2} --exclude-list ./tools/tempest-integrated-gate-object-storage-exclude-list.txt {posargs} |
Ghanshyam | 9535852 | 2019-07-05 08:58:32 +0000 | [diff] [blame] | 228 | |
Matthew Treinish | 99288cd | 2014-02-10 09:21:51 -0500 | [diff] [blame] | 229 | [testenv:full-serial] |
Matthew Treinish | 0e25a90 | 2016-04-29 16:38:51 -0400 | [diff] [blame] | 230 | envdir = .tox/tempest |
Matthew Treinish | 5b7626a | 2014-09-23 17:39:38 -0400 | [diff] [blame] | 231 | sitepackages = {[tempestenv]sitepackages} |
Ghanshyam | 1c680fd | 2020-01-20 11:43:29 -0600 | [diff] [blame] | 232 | basepython = {[tempestenv]basepython} |
Matthew Treinish | 5b7626a | 2014-09-23 17:39:38 -0400 | [diff] [blame] | 233 | setenv = {[tempestenv]setenv} |
| 234 | deps = {[tempestenv]deps} |
Lukas Piwowarski | f047361 | 2023-01-20 10:01:19 +0000 | [diff] [blame] | 235 | regex = '(?!.*\[.*\bslow\b.*\])(^tempest\.(api|scenario|serial_tests))' |
Matthew Treinish | 99288cd | 2014-02-10 09:21:51 -0500 | [diff] [blame] | 236 | # The regex below is used to select which tests to run and exclude the slow tag: |
Masayuki Igawa | 8352204 | 2015-12-01 16:51:34 +0900 | [diff] [blame] | 237 | # See the testrepository bug: https://bugs.launchpad.net/testrepository/+bug/1208610 |
Martin Kopec | dc84423 | 2020-12-24 15:57:53 +0000 | [diff] [blame] | 238 | # FIXME: We can replace it with the `--exclude-regex` option to exclude tests now. |
Matthew Treinish | 99288cd | 2014-02-10 09:21:51 -0500 | [diff] [blame] | 239 | commands = |
Masayuki Igawa | d81d3ce | 2016-04-20 15:00:54 +0900 | [diff] [blame] | 240 | find . -type f -name "*.pyc" -delete |
Lukas Piwowarski | f047361 | 2023-01-20 10:01:19 +0000 | [diff] [blame] | 241 | tempest run --serial --regex {[testenv:full-serial]regex} {posargs} |
Matthew Treinish | 99288cd | 2014-02-10 09:21:51 -0500 | [diff] [blame] | 242 | |
Andrea Frittoli | b838af9 | 2017-03-06 15:11:13 +0000 | [diff] [blame] | 243 | [testenv:scenario] |
| 244 | envdir = .tox/tempest |
| 245 | sitepackages = {[tempestenv]sitepackages} |
Ghanshyam | 1c680fd | 2020-01-20 11:43:29 -0600 | [diff] [blame] | 246 | basepython = {[tempestenv]basepython} |
Andrea Frittoli | b838af9 | 2017-03-06 15:11:13 +0000 | [diff] [blame] | 247 | setenv = {[tempestenv]setenv} |
| 248 | deps = {[tempestenv]deps} |
Lukas Piwowarski | f047361 | 2023-01-20 10:01:19 +0000 | [diff] [blame] | 249 | regex = '(^tempest\.scenario)' |
Andrea Frittoli | b838af9 | 2017-03-06 15:11:13 +0000 | [diff] [blame] | 250 | # The regex below is used to select all scenario tests |
| 251 | commands = |
| 252 | find . -type f -name "*.pyc" -delete |
Lukas Piwowarski | f047361 | 2023-01-20 10:01:19 +0000 | [diff] [blame] | 253 | tempest run --serial --regex {[testenv:scenario]regex} {posargs} |
Andrea Frittoli | b838af9 | 2017-03-06 15:11:13 +0000 | [diff] [blame] | 254 | |
Monty Taylor | 8d4c90c | 2013-05-02 14:33:18 -0400 | [diff] [blame] | 255 | [testenv:smoke] |
Matthew Treinish | 0e25a90 | 2016-04-29 16:38:51 -0400 | [diff] [blame] | 256 | envdir = .tox/tempest |
Matthew Treinish | 5b7626a | 2014-09-23 17:39:38 -0400 | [diff] [blame] | 257 | sitepackages = {[tempestenv]sitepackages} |
Ghanshyam | 1c680fd | 2020-01-20 11:43:29 -0600 | [diff] [blame] | 258 | basepython = {[tempestenv]basepython} |
Matthew Treinish | 5b7626a | 2014-09-23 17:39:38 -0400 | [diff] [blame] | 259 | setenv = {[tempestenv]setenv} |
| 260 | deps = {[tempestenv]deps} |
Lukas Piwowarski | f047361 | 2023-01-20 10:01:19 +0000 | [diff] [blame] | 261 | regex = '\[.*\bsmoke\b.*\]' |
Monty Taylor | 8d4c90c | 2013-05-02 14:33:18 -0400 | [diff] [blame] | 262 | commands = |
Masayuki Igawa | d81d3ce | 2016-04-20 15:00:54 +0900 | [diff] [blame] | 263 | find . -type f -name "*.pyc" -delete |
Lukas Piwowarski | f047361 | 2023-01-20 10:01:19 +0000 | [diff] [blame] | 264 | tempest run --regex {[testenv:smoke]regex} {posargs} |
Monty Taylor | 8d4c90c | 2013-05-02 14:33:18 -0400 | [diff] [blame] | 265 | |
Joe Gordon | d279629 | 2013-11-14 12:55:55 -0800 | [diff] [blame] | 266 | [testenv:smoke-serial] |
Matthew Treinish | 0e25a90 | 2016-04-29 16:38:51 -0400 | [diff] [blame] | 267 | envdir = .tox/tempest |
Matthew Treinish | 5b7626a | 2014-09-23 17:39:38 -0400 | [diff] [blame] | 268 | sitepackages = {[tempestenv]sitepackages} |
Ghanshyam | 1c680fd | 2020-01-20 11:43:29 -0600 | [diff] [blame] | 269 | basepython = {[tempestenv]basepython} |
Matthew Treinish | 5b7626a | 2014-09-23 17:39:38 -0400 | [diff] [blame] | 270 | setenv = {[tempestenv]setenv} |
| 271 | deps = {[tempestenv]deps} |
Lukas Piwowarski | f047361 | 2023-01-20 10:01:19 +0000 | [diff] [blame] | 272 | regex = '\[.*\bsmoke\b.*\]' |
Joe Gordon | d279629 | 2013-11-14 12:55:55 -0800 | [diff] [blame] | 273 | # This is still serial because neutron doesn't work with parallel. See: |
| 274 | # https://bugs.launchpad.net/tempest/+bug/1216076 so the neutron smoke |
| 275 | # job would fail if we moved it to parallel. |
| 276 | commands = |
Masayuki Igawa | d81d3ce | 2016-04-20 15:00:54 +0900 | [diff] [blame] | 277 | find . -type f -name "*.pyc" -delete |
Lukas Piwowarski | f047361 | 2023-01-20 10:01:19 +0000 | [diff] [blame] | 278 | tempest run --serial --regex {[testenv:smoke-serial]regex} {posargs} |
Joe Gordon | d279629 | 2013-11-14 12:55:55 -0800 | [diff] [blame] | 279 | |
ghanshyam | 10326c7 | 2018-08-01 08:53:00 +0000 | [diff] [blame] | 280 | [testenv:slow-serial] |
| 281 | envdir = .tox/tempest |
| 282 | sitepackages = {[tempestenv]sitepackages} |
Ghanshyam | 1c680fd | 2020-01-20 11:43:29 -0600 | [diff] [blame] | 283 | basepython = {[tempestenv]basepython} |
ghanshyam | 10326c7 | 2018-08-01 08:53:00 +0000 | [diff] [blame] | 284 | setenv = {[tempestenv]setenv} |
| 285 | deps = {[tempestenv]deps} |
Lukas Piwowarski | f047361 | 2023-01-20 10:01:19 +0000 | [diff] [blame] | 286 | regex = '\[.*\bslow\b.*\]' |
ghanshyam | 10326c7 | 2018-08-01 08:53:00 +0000 | [diff] [blame] | 287 | # The regex below is used to select the slow tagged tests to run serially: |
| 288 | commands = |
| 289 | find . -type f -name "*.pyc" -delete |
Lukas Piwowarski | f047361 | 2023-01-20 10:01:19 +0000 | [diff] [blame] | 290 | tempest run --serial --regex {[testenv:slow-serial]regex} {posargs} |
ghanshyam | 10326c7 | 2018-08-01 08:53:00 +0000 | [diff] [blame] | 291 | |
Ghanshyam Mann | 6bb98c2 | 2023-02-10 18:22:02 -0600 | [diff] [blame] | 292 | [testenv:slow] |
| 293 | envdir = .tox/tempest |
| 294 | sitepackages = {[tempestenv]sitepackages} |
| 295 | basepython = {[tempestenv]basepython} |
| 296 | setenv = {[tempestenv]setenv} |
| 297 | deps = {[tempestenv]deps} |
| 298 | # The regex below is used to select the slow tagged tests: |
| 299 | regex = '\[.*\bslow\b.*\]' |
| 300 | commands = |
| 301 | find . -type f -name "*.pyc" -delete |
| 302 | tempest run --regex {[testenv:slow]regex} {posargs} |
| 303 | |
Ghanshyam Mann | e2183ca | 2023-02-10 19:31:52 -0600 | [diff] [blame^] | 304 | [testenv:multinode] |
| 305 | envdir = .tox/tempest |
| 306 | sitepackages = {[tempestenv]sitepackages} |
| 307 | basepython = {[tempestenv]basepython} |
| 308 | setenv = {[tempestenv]setenv} |
| 309 | deps = {[tempestenv]deps} |
| 310 | # The regex below is used to select the multinode and smoke tagged tests |
| 311 | regex = '\[.*\bsmoke|multinode\b.*\]' |
| 312 | commands = |
| 313 | find . -type f -name "*.pyc" -delete |
| 314 | tempest run --regex {[testenv:multinode]regex} {posargs} |
| 315 | |
Ghanshyam | a0b8ca4 | 2019-07-17 09:46:41 +0000 | [diff] [blame] | 316 | [testenv:ipv6-only] |
| 317 | envdir = .tox/tempest |
| 318 | sitepackages = {[tempestenv]sitepackages} |
Ghanshyam | 1c680fd | 2020-01-20 11:43:29 -0600 | [diff] [blame] | 319 | basepython = {[tempestenv]basepython} |
Ghanshyam | a0b8ca4 | 2019-07-17 09:46:41 +0000 | [diff] [blame] | 320 | setenv = {[tempestenv]setenv} |
| 321 | deps = {[tempestenv]deps} |
Lukas Piwowarski | f047361 | 2023-01-20 10:01:19 +0000 | [diff] [blame] | 322 | regex = '\[.*\bsmoke|ipv6|test_network_v6\b.*\]' |
Ghanshyam | a0b8ca4 | 2019-07-17 09:46:41 +0000 | [diff] [blame] | 323 | # Run only smoke and ipv6 tests. This env is used to tests |
| 324 | # the ipv6 deployments and basic tests run fine so that we can |
| 325 | # verify that services listen on IPv6 address. |
| 326 | commands = |
| 327 | find . -type f -name "*.pyc" -delete |
Lukas Piwowarski | f047361 | 2023-01-20 10:01:19 +0000 | [diff] [blame] | 328 | tempest run --regex {[testenv:ipv6-only]regex} {posargs} |
Ghanshyam | a0b8ca4 | 2019-07-17 09:46:41 +0000 | [diff] [blame] | 329 | |
Sean Dague | b56052b | 2013-05-21 17:57:41 -0400 | [diff] [blame] | 330 | [testenv:venv] |
Matt Riedemann | d5e9282 | 2018-01-25 11:25:57 -0500 | [diff] [blame] | 331 | deps = |
Ghanshyam Mann | 5c075cc | 2022-11-12 19:40:11 -0600 | [diff] [blame] | 332 | -c{env:UPPER_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master} |
Matt Riedemann | d5e9282 | 2018-01-25 11:25:57 -0500 | [diff] [blame] | 333 | -r{toxinidir}/requirements.txt |
| 334 | -r{toxinidir}/doc/requirements.txt |
Sean Dague | b56052b | 2013-05-21 17:57:41 -0400 | [diff] [blame] | 335 | commands = {posargs} |
Sean Dague | b56052b | 2013-05-21 17:57:41 -0400 | [diff] [blame] | 336 | |
Matthew Treinish | 0e25a90 | 2016-04-29 16:38:51 -0400 | [diff] [blame] | 337 | [testenv:venv-tempest] |
| 338 | envdir = .tox/tempest |
| 339 | sitepackages = {[tempestenv]sitepackages} |
Ghanshyam | 1c680fd | 2020-01-20 11:43:29 -0600 | [diff] [blame] | 340 | basepython = {[tempestenv]basepython} |
Matthew Treinish | 0e25a90 | 2016-04-29 16:38:51 -0400 | [diff] [blame] | 341 | setenv = {[tempestenv]setenv} |
| 342 | deps = {[tempestenv]deps} |
| 343 | commands = {posargs} |
| 344 | |
Matthew Treinish | 8bd013e | 2014-06-18 21:58:32 -0400 | [diff] [blame] | 345 | [testenv:docs] |
junboli | 173b11c | 2018-01-15 11:25:35 +0800 | [diff] [blame] | 346 | deps = |
Ghanshyam Mann | 5c075cc | 2022-11-12 19:40:11 -0600 | [diff] [blame] | 347 | -c{env:UPPER_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master} |
junboli | 173b11c | 2018-01-15 11:25:35 +0800 | [diff] [blame] | 348 | -r{toxinidir}/doc/requirements.txt |
Mathew Odden | b389faa | 2015-07-30 20:24:08 +0000 | [diff] [blame] | 349 | commands = |
Lukas Piwowarski | a905501 | 2020-06-15 17:16:15 +0200 | [diff] [blame] | 350 | sphinx-apidoc -f -o doc/source/tests/compute tempest/api/compute |
| 351 | sphinx-apidoc -f -o doc/source/tests/identity tempest/api/identity |
| 352 | sphinx-apidoc -f -o doc/source/tests/image tempest/api/image |
| 353 | sphinx-apidoc -f -o doc/source/tests/network tempest/api/network |
| 354 | sphinx-apidoc -f -o doc/source/tests/object_storage tempest/api/object_storage |
| 355 | sphinx-apidoc -f -o doc/source/tests/scenario tempest/scenario |
| 356 | sphinx-apidoc -f -o doc/source/tests/volume tempest/api/volume |
junboli | 173b11c | 2018-01-15 11:25:35 +0800 | [diff] [blame] | 357 | rm -rf doc/build |
Ihar Hrachyshka | 8032b2e | 2017-11-27 14:16:59 -0800 | [diff] [blame] | 358 | sphinx-build -W -b html doc/source doc/build/html |
Martin Kopec | dc84423 | 2020-12-24 15:57:53 +0000 | [diff] [blame] | 359 | allowlist_externals = |
Lukas Piwowarski | a905501 | 2020-06-15 17:16:15 +0200 | [diff] [blame] | 360 | rm |
Matthew Treinish | 8bd013e | 2014-06-18 21:58:32 -0400 | [diff] [blame] | 361 | |
Masayuki Igawa | 7e4ef4c | 2019-07-03 17:17:44 +0900 | [diff] [blame] | 362 | [testenv:pdf-docs] |
Masayuki Igawa | 7e4ef4c | 2019-07-03 17:17:44 +0900 | [diff] [blame] | 363 | deps = {[testenv:docs]deps} |
Martin Kopec | dc84423 | 2020-12-24 15:57:53 +0000 | [diff] [blame] | 364 | allowlist_externals = |
Lukas Piwowarski | a905501 | 2020-06-15 17:16:15 +0200 | [diff] [blame] | 365 | rm |
Masayuki Igawa | 7e4ef4c | 2019-07-03 17:17:44 +0900 | [diff] [blame] | 366 | make |
| 367 | commands = |
Lukas Piwowarski | a905501 | 2020-06-15 17:16:15 +0200 | [diff] [blame] | 368 | sphinx-apidoc -f -o doc/source/tests/compute tempest/api/compute |
| 369 | sphinx-apidoc -f -o doc/source/tests/identity tempest/api/identity |
| 370 | sphinx-apidoc -f -o doc/source/tests/image tempest/api/image |
| 371 | sphinx-apidoc -f -o doc/source/tests/network tempest/api/network |
| 372 | sphinx-apidoc -f -o doc/source/tests/object_storage tempest/api/object_storage |
| 373 | sphinx-apidoc -f -o doc/source/tests/scenario tempest/scenario |
| 374 | sphinx-apidoc -f -o doc/source/tests/volume tempest/api/volume |
Masayuki Igawa | 7e4ef4c | 2019-07-03 17:17:44 +0900 | [diff] [blame] | 375 | sphinx-build -W -b latex doc/source doc/build/pdf |
| 376 | make -C doc/build/pdf |
| 377 | |
Jay Pipes | a6aa5f2 | 2012-07-24 19:40:29 -0400 | [diff] [blame] | 378 | [testenv:pep8] |
afazekas | 40fcb9b | 2019-03-08 11:25:11 +0100 | [diff] [blame] | 379 | deps = |
Attila Fazekas | c07edb5 | 2019-03-17 15:38:03 +0100 | [diff] [blame] | 380 | -r{toxinidir}/test-requirements.txt |
afazekas | 40fcb9b | 2019-03-08 11:25:11 +0100 | [diff] [blame] | 381 | autopep8 |
Matthew Treinish | 3d46811 | 2013-10-24 21:49:14 +0000 | [diff] [blame] | 382 | commands = |
afazekas | 40fcb9b | 2019-03-08 11:25:11 +0100 | [diff] [blame] | 383 | autopep8 --exit-code --max-line-length=79 --experimental --diff -r tempest setup.py |
Masayuki Igawa | d81d3ce | 2016-04-20 15:00:54 +0900 | [diff] [blame] | 384 | flake8 {posargs} |
| 385 | check-uuid |
Matthew Treinish | 3d46811 | 2013-10-24 21:49:14 +0000 | [diff] [blame] | 386 | |
afazekas | 40fcb9b | 2019-03-08 11:25:11 +0100 | [diff] [blame] | 387 | [testenv:autopep8] |
| 388 | deps = autopep8 |
afazekas | 40fcb9b | 2019-03-08 11:25:11 +0100 | [diff] [blame] | 389 | commands = |
Attila Fazekas | c07edb5 | 2019-03-17 15:38:03 +0100 | [diff] [blame] | 390 | {toxinidir}/tools/format.sh |
afazekas | 40fcb9b | 2019-03-08 11:25:11 +0100 | [diff] [blame] | 391 | |
Chris Hoge | 7579c1a | 2015-02-26 14:12:15 -0800 | [diff] [blame] | 392 | [testenv:uuidgen] |
| 393 | commands = |
Masayuki Igawa | d81d3ce | 2016-04-20 15:00:54 +0900 | [diff] [blame] | 394 | check-uuid --fix |
Chris Hoge | 296558c | 2015-02-19 00:29:49 -0600 | [diff] [blame] | 395 | |
Giampaolo Lauria | 1b837ce | 2013-05-01 11:22:07 -0400 | [diff] [blame] | 396 | [hacking] |
Matthew Treinish | 2b6db0c | 2014-05-17 10:42:36 -0400 | [diff] [blame] | 397 | import_exceptions = tempest.services |
Giampaolo Lauria | 1b837ce | 2013-05-01 11:22:07 -0400 | [diff] [blame] | 398 | |
Monty Taylor | b2ca5ca | 2013-04-28 18:00:21 -0700 | [diff] [blame] | 399 | [flake8] |
caoyuan | 349ba75 | 2019-04-23 19:40:06 +0800 | [diff] [blame] | 400 | # E125 is a won't fix until https://github.com/jcrocholl/pep8/issues/126 is resolved. For further detail see https://review.opendev.org/#/c/36788/ |
Matthew Treinish | 96e9e88 | 2014-06-09 18:37:19 -0400 | [diff] [blame] | 401 | # E123 skipped because it is ignored by default in the default pep8 |
Matthew Treinish | 1d14c54 | 2014-06-17 20:25:40 -0400 | [diff] [blame] | 402 | # E129 skipped because it is too limiting when combined with other rules |
Stephen Finucane | fc42cc6 | 2018-07-06 13:39:55 +0100 | [diff] [blame] | 403 | # W504 skipped because it is overeager and unnecessary |
Artom Lifshitz | 7bd4c3a | 2021-10-14 10:42:41 -0400 | [diff] [blame] | 404 | # H405 skipped because it arbitrarily forces doctring "title" lines |
| 405 | ignore = E125,E123,E129,W504,H405 |
Monty Taylor | b2ca5ca | 2013-04-28 18:00:21 -0700 | [diff] [blame] | 406 | show-source = True |
junboli | 8bd00e3 | 2017-08-22 17:06:15 +0800 | [diff] [blame] | 407 | exclude = .git,.venv,.tox,dist,doc,*egg,build |
Jordan Pittier | 525ec71 | 2016-12-07 17:51:26 +0100 | [diff] [blame] | 408 | enable-extensions = H106,H203,H904 |
Masayuki Igawa | 134d9f7 | 2017-02-10 18:05:26 +0900 | [diff] [blame] | 409 | import-order-style = pep8 |
Andrea Frittoli (andreaf) | 897ecfb | 2016-02-23 10:12:48 -0500 | [diff] [blame] | 410 | |
Andreas Jaeger | f27a334 | 2020-03-29 10:21:39 +0200 | [diff] [blame] | 411 | [flake8:local-plugins] |
| 412 | extension = |
| 413 | T102 = checks:import_no_clients_in_api_and_scenario_tests |
| 414 | T104 = checks:scenario_tests_need_service_tags |
| 415 | T105 = checks:no_setup_teardown_class_for_tests |
| 416 | T107 = checks:service_tags_not_in_module_path |
| 417 | T108 = checks:no_hyphen_at_end_of_rand_name |
| 418 | N322 = checks:no_mutable_default_args |
| 419 | T109 = checks:no_testtools_skip_decorator |
| 420 | T110 = checks:get_resources_on_service_clients |
| 421 | T111 = checks:delete_resources_on_service_clients |
| 422 | T112 = checks:dont_import_local_tempest_into_lib |
| 423 | T113 = checks:use_rand_uuid_instead_of_uuid4 |
| 424 | T114 = checks:dont_use_config_in_tempest_lib |
| 425 | T115 = checks:dont_put_admin_tests_on_nonadmin_path |
| 426 | T116 = checks:unsupported_exception_attribute_PY3 |
| 427 | T117 = checks:negative_test_attribute_always_applied_to_negative_tests |
Takashi Kajinami | 2a5ef1b | 2021-11-29 15:48:25 +0900 | [diff] [blame] | 428 | T118 = checks:no_log_warn |
Andreas Jaeger | f27a334 | 2020-03-29 10:21:39 +0200 | [diff] [blame] | 429 | paths = |
| 430 | ./tempest/hacking |
| 431 | |
Andrea Frittoli (andreaf) | 897ecfb | 2016-02-23 10:12:48 -0500 | [diff] [blame] | 432 | [testenv:releasenotes] |
junboli | 173b11c | 2018-01-15 11:25:35 +0800 | [diff] [blame] | 433 | deps = |
Ghanshyam Mann | 5c075cc | 2022-11-12 19:40:11 -0600 | [diff] [blame] | 434 | -c{env:UPPER_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master} |
junboli | 173b11c | 2018-01-15 11:25:35 +0800 | [diff] [blame] | 435 | -r{toxinidir}/doc/requirements.txt |
junboli | 8bd00e3 | 2017-08-22 17:06:15 +0800 | [diff] [blame] | 436 | commands = |
junboli | 173b11c | 2018-01-15 11:25:35 +0800 | [diff] [blame] | 437 | rm -rf releasenotes/build |
| 438 | sphinx-build -a -E -W -d releasenotes/build/doctrees \ |
| 439 | -b html releasenotes/source releasenotes/build/html |
Martin Kopec | dc84423 | 2020-12-24 15:57:53 +0000 | [diff] [blame] | 440 | allowlist_externals = rm |
Jordan Pittier | cefaa2b | 2016-07-22 13:04:26 +0200 | [diff] [blame] | 441 | |
Masayuki Igawa | de1153b | 2019-07-30 18:02:07 +0900 | [diff] [blame] | 442 | [testenv:bashate] |
Masayuki Igawa | de1153b | 2019-07-30 18:02:07 +0900 | [diff] [blame] | 443 | # if you want to test out some changes you have made to bashate |
| 444 | # against tempest, just set BASHATE_INSTALL_PATH=/path/... to your |
| 445 | # modified bashate tree |
| 446 | deps = |
| 447 | {env:BASHATE_INSTALL_PATH:bashate} |
Martin Kopec | dc84423 | 2020-12-24 15:57:53 +0000 | [diff] [blame] | 448 | allowlist_externals = bash |
Masayuki Igawa | de1153b | 2019-07-30 18:02:07 +0900 | [diff] [blame] | 449 | commands = bash -c "find {toxinidir}/tools \ |
| 450 | -not \( -type d -name .?\* -prune \) \ |
| 451 | -type f \ |
| 452 | -name \*.sh \ |
Masayuki Igawa | fdd9644 | 2019-08-02 13:44:49 +0900 | [diff] [blame] | 453 | -print0 | xargs -0 bashate -v -eE005,E042 -i E006" |
Masayuki Igawa | de1153b | 2019-07-30 18:02:07 +0900 | [diff] [blame] | 454 | |
Jordan Pittier | cefaa2b | 2016-07-22 13:04:26 +0200 | [diff] [blame] | 455 | [testenv:pip-check-reqs] |
| 456 | # Do not install test-requirements as that will pollute the virtualenv for |
| 457 | # determining missing packages. |
| 458 | # This also means that pip-check-reqs must be installed separately, outside |
| 459 | # of the requirements.txt files |
| 460 | deps = pip_check_reqs |
| 461 | -r{toxinidir}/requirements.txt |
| 462 | commands= |
| 463 | pip-extra-reqs -d --ignore-file=tempest/tests/* tempest |
| 464 | pip-missing-reqs -d --ignore-file=tempest/tests/* tempest |
Chandan Kumar | ac5c553 | 2016-11-30 18:49:26 +0530 | [diff] [blame] | 465 | |
| 466 | |
| 467 | [testenv:bindep] |
| 468 | # Do not install any requirements. We want this to be fast and work even if |
| 469 | # system dependencies are missing, since it's used to tell you what system |
| 470 | # dependencies are missing! This also means that bindep must be installed |
| 471 | # separately, outside of the requirements files. |
| 472 | deps = bindep |
| 473 | commands = bindep test |
Chandan Kumar | b7affe4 | 2017-06-29 13:57:01 +0530 | [diff] [blame] | 474 | |
| 475 | [testenv:plugin-sanity-check] |
| 476 | # perform tempest plugin sanity |
Martin Kopec | dc84423 | 2020-12-24 15:57:53 +0000 | [diff] [blame] | 477 | allowlist_externals = bash |
Chandan Kumar | b7affe4 | 2017-06-29 13:57:01 +0530 | [diff] [blame] | 478 | commands = |
| 479 | bash tools/tempest-plugin-sanity.sh |
Ghanshyam Mann | 83d13e5 | 2020-12-29 13:13:40 -0600 | [diff] [blame] | 480 | |
| 481 | [testenv:stestr-master] |
| 482 | envdir = .tox/tempest |
| 483 | sitepackages = {[tempestenv]sitepackages} |
| 484 | basepython = {[tempestenv]basepython} |
| 485 | setenv = {[tempestenv]setenv} |
| 486 | deps = {[tempestenv]deps} |
Lukas Piwowarski | f047361 | 2023-01-20 10:01:19 +0000 | [diff] [blame] | 487 | regex = '\[.*\bsmoke\b.*\]' |
Ghanshyam Mann | 83d13e5 | 2020-12-29 13:13:40 -0600 | [diff] [blame] | 488 | # The below command install stestr master version and run smoke tests |
| 489 | commands = |
| 490 | find . -type f -name "*.pyc" -delete |
| 491 | pip install -U git+https://github.com/mtreinish/stestr |
Lukas Piwowarski | f047361 | 2023-01-20 10:01:19 +0000 | [diff] [blame] | 492 | tempest run --regex {[testenv:stestr-master]regex} {posargs} |