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
|
[tox]
envlist = py{27,34,35,36},pep8,apiexamples,cover,api-ref,releasenotes,bandit,fakemodetests,pylint
minversion = 1.6
skipsdist = True
[testenv]
setenv = VIRTUAL_ENV={envdir}
PYTHONWARNINGS=default::DeprecationWarning
OS_TEST_PATH=./trove/tests/unittests
OS_STDOUT_CAPTURE=1
OS_STDERR_CAPTURE=1
usedevelop = True
install_command = pip install \
-c{env:UPPER_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/stein} \
-U {opts} {packages}
deps = -r{toxinidir}/requirements.txt
-r{toxinidir}/test-requirements.txt
commands = find ./trove -type f -name "*.pyc" -delete
rm -f trove_test.sqlite
stestr run --serial {posargs}
stestr slowest
whitelist_externals = find
rm
bash
[tox:jenkins]
sitepackages = True
[testenv:pep8]
basepython = python3
commands =
flake8
doc8 {posargs}
[testenv:apiexamples]
basepython = python3
commands = {envpython} generate_examples.py
[testenv:fakemodetests]
basepython = python3
commands = {envpython} run_tests.py
[testenv:debug]
basepython = python3
commands = oslo_debug_helper {posargs}
[testenv:cover]
basepython = python3
setenv =
{[testenv]setenv}
PYTHON=coverage run --source trove
commands =
coverage erase
stestr run --serial {posargs}
coverage run -a run_tests.py
coverage html -d cover
coverage xml -o cover/coverage.xml
coverage report
[testenv:venv]
basepython = python3
commands = {posargs}
[doc8]
ignore-path = .venv,.tox,.git,dist,doc,*egg-info,tools,etc,build,*.po,*.pot,integration,releasenotes,*.txt,api-ref/source/samples
[flake8]
show-source = True
# H301 is ignored on purpose.
# The rest of the ignores are TODOs.
ignore = F821,H301,H404,H405,H501,E402,W503,E731
enable-extensions = H203,H106
builtins = _
# add *.yaml for playbooks/trove-devstack-base.yaml, as it will be matched by
# trove-* in the "filename" configuration.
exclude=.venv,.tox,.git,dist,doc,*egg,tools,etc,build,*.po,*.pot,integration,releasenotes,*.yaml
filename=*.py,trove-*,app.wsgi
[hacking]
import_exceptions = trove.common.i18n
local-check-factory = trove.hacking.checks.factory
[testenv:api-ref]
basepython = python3
# This environment is called from CI scripts to test and publish
# the API Ref to developer.openstack.org.
commands =
rm -rf api-ref/build
sphinx-build -W -b html -d api-ref/build/doctrees api-ref/source api-ref/build/html
[testenv:releasenotes]
basepython = python3
commands = sphinx-build -a -E -W -d releasenotes/build/doctrees -b html releasenotes/source releasenotes/build/html
[testenv:bandit]
basepython = python3
commands = bandit -r trove -n5 -x tests
[testenv:bandit-baseline]
basepython = python3
envdir = {toxworkdir}/bandit
commands = bandit-baseline -r trove -n5 -x tests -ii -ll
[testenv:genpolicy]
basepython = python3
commands = oslopolicy-sample-generator --config-file=tools/trove-policy-generator.conf
[testenv:pylint]
basepython = python3
deps = -r{toxinidir}/requirements.txt
-r{toxinidir}/test-requirements.txt
commands = python tools/trove-pylint.py {posargs:check}
[testenv:docs]
basepython = python3
commands = sphinx-build -W -b html doc/source doc/build/html
[testenv:lower-constraints]
basepython = python3
deps =
-c{toxinidir}/lower-constraints.txt
-r{toxinidir}/test-requirements.txt
-r{toxinidir}/requirements.txt
[testenv:trovestack]
basepython = python3
skip_install = True
changedir = {toxinidir}/integration/scripts
passenv = *
commands =
pip install --no-binary :all: {toxinidir} \
-chttps://releases.openstack.org/constraints/upper/stein
./trovestack {posargs}
|