File: tox.ini

package info (click to toggle)
rally 5.0.0-6
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 8,364 kB
  • sloc: python: 42,541; javascript: 487; sh: 198; makefile: 192; xml: 43
file content (154 lines) | stat: -rw-r--r-- 4,946 bytes parent folder | download
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
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
[tox]
minversion = 4.0.0
ignore_basepython_conflict = true
envlist = py39,py312,pep8,samples

[testenv]
extras = {env:RALLY_EXTRAS:}
setenv = VIRTUAL_ENV={envdir}
         LANG=en_US.UTF-8
         LC_CTYPE="en.US.UTF-8"
         LANGUAGE=en_US:en
         LC_ALL=C
         PYTHONHASHSEED=0
         TOX_ENV_NAME={envname}
         PYTEST_REPORT = {env:PYTEST_REPORT:{toxinidir}/.test_results/{envname}_report.html}
         TESTS_DIR = "tests/unit"
allowlist_externals = find
                      rm
                      make
                      mkdir
deps = -r{toxinidir}/requirements.txt
       -r{toxinidir}/test-requirements.txt
       -c{toxinidir}/upper-constraints.txt
usedevelop = True
pre_commands = find . -type f -name "*.pyc" -delete
commands =
  pytest -vv                 \  # base command
  --html={env:PYTEST_REPORT} \  # html report
  --self-contained-html      \  # embedded css
  --durations=10             \  # get a list of the slowest 10 tests
  -n auto                    \  # launch tests in parallel
  {posargs:{env:TESTS_DIR}}
distribute = false
basepython = python3
passenv =
    PYTEST_REPORT
    http_proxy
    HTTP_PROXY
    https_proxy
    HTTPS_PROXY
    no_proxy
    NO_PROXY
    HOME

[testenv:zuul-ansible-lint]
setenv = VIRTUAL_ENV={envdir}
distribute = false
deps = ansible-lint
commands = ansible-lint --strict --config-file tests/ci/playbooks/.ansible-lint tests/ci/playbooks

[testenv:pep8]
skip_install = true
commands = flake8

[testenv:mypy]
skip_install = true
deps = {[testenv]deps}
       -r{toxinidir}/types-requirements.txt
commands = mypy {posargs:"rally"}

[testenv:samples]
setenv =
   TESTS_DIR = "tests/samples"

[testenv:venv]
commands = {posargs}

[testenv:functional]
deps = -r{toxinidir}/requirements.txt
       -r{toxinidir}/test-requirements.txt
       stestr
setenv =
  TESTS_DIR = "tests/functional"

[testenv:cover]
commands = {toxinidir}/tests/ci/cover.sh {posargs}
allowlist_externals = {toxinidir}/tests/ci/cover.sh

[testenv:docs]
basepython = python3
deps =
  -c{toxinidir}/upper-constraints.txt
  -r{toxinidir}/doc/requirements.txt
commands =
  rm -rf doc/build
  sphinx-build -v -b html doc/source doc/build/html

[testenv:genconfig]
commands =
    oslo-config-generator --config-file etc/rally/rally-config-generator.conf

[testenv:requirements]
deps = requests[security]
commands = python {toxinidir}/tests/ci/sync_requirements.py {posargs}

[flake8]
# E731 do not assign a lambda expression, use a def
# W503 line break before binary operator
ignore = H703,H105,E731,W503
show-source = true
exclude=.venv,.git,.tox,dist,*lib/python*,*egg,tools,build,setup.py

[flake8:local-plugins]
extension =
    N301 = checks:check_assert_methods_from_mock
    N310 = checks:check_import_of_logging
    N311 = checks:check_import_of_config
    N312 = checks:no_use_conf_debug_check
    N313 = checks:check_log_warn
    N320 = checks:assert_true_instance
    N321 = checks:assert_equal_type
    N322 = checks:assert_equal_none
    N323 = checks:assert_true_or_false_with_in
    N324 = checks:assert_equal_in
    N326 = checks:assert_equal_true_or_false
    N340 = checks:check_no_direct_rally_objects_import
    N341 = checks:check_no_oslo_deprecated_import
    N342 = checks:check_opts_import_path
    N350 = checks:check_quotes
    N351 = checks:check_no_constructor_data_struct
    N352 = checks:check_dict_formatting_in_string
    N354 = checks:check_raises
    N356 = checks:check_datetime_alias
    N360 = checks:check_db_imports_in_cli
    N361 = checks:check_objects_imports_in_cli
paths = ./tests/hacking

[testenv:bindep]
# Do not install any requirements. We want this to be fast and work even if
# system dependencies are missing, since it's used to tell you what system
# dependencies are missing! This also means that bindep must be installed
# separately, outside of the requirements files.
deps = bindep
commands = bindep

[testenv:self]
commands = \
  find . -type f -name "*.pyc" -delete
  mkdir -p {toxinidir}/.test_results
  python3 {toxinidir}/tests/ci/rally_self_job.py --task {toxinidir}/rally-jobs/self-rally.yaml --plugins-path {toxinidir}/rally-jobs/plugins

[pytest]
filterwarnings =
    error
    # we do not use anything inner from OptionParser, so we do not care about it's parent
    ignore:The frontend.Option.* class will be.*:DeprecationWarning:
    # python 3.10
    ignore:The distutils package is deprecated and slated for removal in Python 3.12. Use setuptools or check PEP 632 for potential alternatives:DeprecationWarning:
    # pytest-cov & pytest-xdist
    ignore:The --rsyncdir command line argument and rsyncdirs config variable are deprecated.:DeprecationWarning:
    # python3.11 ?
    ignore:datetime\.datetime\.utcnow\(\) is deprecated.*:DeprecationWarning:
    ignore:datetime\.datetime\.utcfromtimestamp\(\) is deprecated.*:DeprecationWarning:
    ignore:eventletutils module is deprecated and will be removed\.:DeprecationWarning: