forked from openstack/designate
-
Notifications
You must be signed in to change notification settings - Fork 0
/
tox.ini
130 lines (114 loc) · 4.44 KB
/
tox.ini
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
[tox]
minversion = 1.6
envlist = py34,py27,flake8
skipsdist = True
[testenv]
usedevelop = True
install_command = pip install -c{env:UPPER_CONSTRAINTS_FILE:https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt?h=master} {opts} {packages}
deps = -r{toxinidir}/requirements.txt
-r{toxinidir}/test-requirements.txt
setenv =
PYTHONDONTWRITEBYTECODE=1
whitelist_externals = sh
find
rm
commands =
find . -type f -name "*.pyc" -delete
sh tools/pretty_tox.sh '{posargs}'
passenv = http_proxy
HTTP_PROXY
https_proxy
HTTPS_PROXY
no_proxy
NO_PROXY
OS_DEBUG
OS_LOG_CAPTURE
OS_STDERR_CAPTURE
OS_STDOUT_CAPTURE
[testenv:py34]
commands =
ostestr --blacklist_file=tests-py3.txt
[testenv:docs]
commands = rm -rf doc/build
sphinx-build -E -W -b html doc/source doc/build/html
[testenv:cover]
# NOTE(kiall): this target does not use constraints because upstream infra does
# not yet support it. Once that's fixed, we can drop the
# install_command.
install_command = pip install {opts} {packages}
commands = python setup.py testr --coverage --testr-args='{posargs}'
[testenv:bandit]
deps = -r{toxinidir}/test-requirements.txt
commands = bandit -r designate -n5 -x tests -t \
B111,B505,B504,B503,B502,B501,B604,B605,B001,B601,B602,B701,B609,B702,\
B608,B506,B312,B310,B411,B109,B108,B103,B102,B309,B308,B302,B307,B306
[testenv:debug]
commands = oslo_debug_helper {posargs}
[testenv:flake8]
deps = -r{toxinidir}/test-requirements.txt
commands = sh tools/pretty_flake8.sh
{[testenv:bandit]commands}
[testenv:pep8]
deps = -r{toxinidir}/test-requirements.txt
basepython = python2.7
commands = sh tools/pretty_flake8.sh
{[testenv:bandit]commands}
[testenv:bashate]
deps = bashate
whitelist_externals = bash
commands = bash -c "find {toxinidir}/devstack \
-not \( -type d -name .?\* -prune \) \
-not \( -type d -name doc -prune \) \
-type f \
-not -name \*~ \
-not -name \*.md \
\( \
-name \*.sh -or \
-name \*rc -or \
-name functions\* -or \
-wholename \*/lib/\* \
\) \
-print0 | xargs -0 bashate -v"
[testenv:pip-check-reqs]
# do not install test-requirements as that will pollute the virtualenv for
# determining missing packages
# this also means that pip-missing-reqs must be installed separately, outside
# of the requirements.txt files
deps = pip-check-reqs
-r{toxinidir}/requirements.txt
commands=pip-missing-reqs -d --ignore-file=designate/tests/* designate
[testenv:functional]
usedevelop = False
setenv = VIRTUAL_ENV={envdir}
OS_TEST_PATH=functionaltests/
passenv = TEMPEST_CONFIG
OS_STDOUT_CAPTURE
OS_STDERR_CAPTURE
OS_LOG_CAPTURE
OS_DEBUG
[testenv:releasenotes]
# NOTE(kiall): this target does not use constraints because upstream infra does
# not yet support it. Once that's fixed, we can drop the
# install_command.
install_command = pip install {opts} {packages}
commands = sphinx-build -a -E -d releasenotes/build/doctrees -b html releasenotes/source releasenotes/build/html
[testenv:venv]
# NOTE(kiall): this target does not use constraints because upstream infra does
# not yet support it. Once that's fixed, we can drop the
# install_command.
install_command = pip install {opts} {packages}
commands = {posargs}
[flake8]
# ignored flake8 codes:
# H302 import only modules
# H306 imports not in alphabetical order
# H402 one line docstring needs punctuation
# H404 multi line docstring should start with a summary
# H405 multi line docstring summary not separated with an empty line
# H904 Wrap long lines in parentheses instead of a backslash
# E126 continuation line over-indented for hanging indent
# E128 continuation line under-indented for visual indent
ignore = H302,H306,H402,H404,H405,H904,E126,E128
exclude = .venv,.git,.tox,dist,doc,*openstack/common*,*openstack/deprecated*,*lib/python*,*egg,build,tools,.ropeproject
[hacking]
local-check-factory = designate.hacking.checks.factory