File: tox.ini

package info (click to toggle)
manila 1%3A21.0.0-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 24,512 kB
  • sloc: python: 281,625; sh: 1,873; pascal: 1,336; makefile: 74
file content (170 lines) | stat: -rw-r--r-- 5,276 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
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
[tox]
minversion = 3.18.0
envlist = py3,pep8
# Automatic envs (pyXX) will only use the python version appropriate to that
# env and ignore basepython inherited from [testenv] if we set
# ignore_basepython_conflict.
ignore_basepython_conflict = true

[testenv]
basepython = {env:TOX_PYTHON:python3}
usedevelop = true
setenv =
  VIRTUAL_ENV={envdir}
  PYTHONDONTWRITEBYTECODE=1
deps =
  -c{env:TOX_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/2025.2}
  -r{toxinidir}/requirements.txt
  -r{toxinidir}/test-requirements.txt
commands =
  stestr run {posargs}
  stestr slowest

[testenv:releasenotes]
deps =
  -c{env:TOX_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/2025.2}
  -r{toxinidir}/doc/requirements.txt
commands =
  rm -rf releasenotes/build
  sphinx-build -a -E -W -d releasenotes/build/doctrees \
         -b html releasenotes/source releasenotes/build/html
allowlist_externals = rm

[testenv:newnote]
allowlist_externals = reno
deps =
  -c{env:TOX_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/2025.2}
  -r{toxinidir}/doc/requirements.txt
commands = reno new {posargs}

[testenv:debug]
commands = oslo_debug_helper {posargs}

[testenv:pep8]
skip_install = true
deps =
  pre-commit
commands =
  pre-commit run --all-files --show-diff-on-failure

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

[testenv:genpolicy]
commands = oslopolicy-sample-generator --config-file=etc/manila/manila-policy-generator.conf

[testenv:venv]
commands = {posargs}

[testenv:bandit]
deps = bandit
commands = bandit -r manila --ini tox.ini -n5 -ll

[bandit]
exclude = tests,tegile,hitachi,glusterfs,vnx,ssh_utils.py

[testenv:docs]
# NOTE(elod.illes): requirements.txt is needed because otherwise
# dependencies are installed during 'develop-inst' tox phase without
# constraints which could cause failures in stable branches.
deps =
  -c{env:TOX_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/2025.2}
  -r{toxinidir}/requirements.txt
  -r{toxinidir}/doc/requirements.txt
commands =
  rm -rf doc/build
  sphinx-build -W -b html doc/source doc/build/html
allowlist_externals = rm

[testenv:pdf-docs]
deps = {[testenv:docs]deps}
allowlist_externals =
  make
commands =
  sphinx-build -W -b latex doc/source doc/build/pdf
  make -C doc/build/pdf

[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, and develop mode disabled
# explicitly to avoid unnecessarily installing the checked-out repo too (this
# further relies on "tox.skipsdist = True" above).
deps = bindep
commands = bindep test
usedevelop = False

[testenv:cover]
setenv =
    {[testenv]setenv}
    PYTHON=coverage run --source manila --parallel-mode
allowlist_externals =
  {toxinidir}/tools/cover.sh
commands =
  {toxinidir}/tools/cover.sh {posargs}

[testenv:fast8]
# Let's run fast8 under py3 by default because the py3 checks are stricter.
allowlist_externals =
  {toxinidir}/tools/fast8.sh
commands =
  {toxinidir}/tools/fast8.sh

[testenv:pylint]
deps = -r{toxinidir}/requirements.txt
       -r{toxinidir}/test-requirements.txt
       pylint==3.0.2
allowlist_externals = bash
commands = bash ./tools/coding-checks.sh --pylint {posargs}

[testenv:api-ref]
# This environment is called from CI scripts to test and publish
# the API Ref to docs.openstack.org.
deps = {[testenv:docs]deps}
allowlist_externals = rm
commands =
  rm -rf api-ref/build
  python {toxinidir}/tools/validate-json-files.py {toxinidir}/api-ref/source/samples/
  sphinx-build -W -b html -d api-ref/build/doctrees api-ref/source api-ref/build/html

[testenv:dbrevision]
deps = -r{toxinidir}/requirements.txt
commands = alembic -c manila/db/migrations/alembic.ini revision -m ""{posargs}

[flake8]
# Following checks are ignored on purpose:

# Following checks should be evaluated and fixed:
# E123 closing bracket does not match indentation of opening bracket's line
# E402 module level import not at top of file
# W503 line break before binary operator
# W504 line break after binary operator
ignore = E123,E402,W503,W504
builtins = _
# [H106] Don't put vim configuration in source files.
# [H203] Use assertIs(Not)None to check for None.
# [H904] Use ',' instead of '%', String interpolation should be delayed to be handled by the logging code,
#        rather than being done at the point of the logging call..
enable-extensions = H106,H203,H904
exclude = .git,.tox,.testrepository,.venv,build,cover,dist,doc,*egg,api-ref/build,*/source/conf.py

[hacking]
import_exceptions =
  manila.i18n

[flake8:local-plugins]
extension =
    M310 = checks:CheckLoggingFormatArgs
    M313 = checks:validate_assertTrue
    M323 = checks:check_explicit_underscore_import
    M326 = checks:CheckForTransAdd
    M333 = checks:check_oslo_namespace_imports
    M336 = checks:dict_constructor_with_list_copy
    M337 = checks:no_xrange
    M338 = checks:no_log_warn_check
    M354 = checks:check_uuid4
    M359 = checks:no_translate_logs
paths = ./manila/tests/hacking