df4c446121
We want to default to running all tox environments under python 3, so set the basepython value in each environment. We do not want to specify a minor version number, because we do not want to have to update the file every time we upgrade python. We do not want to set the override once in testenv, because that breaks the more specific versions used in default environments like py35 and py36. Change-Id: I03574b12fc9ef07ce459e81c9b8219a3b10bd4da Signed-off-by: Doug Hellmann <doug@doughellmann.com>
148 lines
4.8 KiB
INI
148 lines
4.8 KiB
INI
[tox]
|
|
envlist = py35,py27,pep8,genpolicy
|
|
minversion = 1.6
|
|
skipsdist = True
|
|
|
|
[testenv]
|
|
usedevelop = True
|
|
install_command = pip install -U -c{env:UPPER_CONSTRAINTS_FILE:https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt} {opts} {packages}
|
|
setenv =
|
|
VIRTUAL_ENV={envdir}
|
|
DISCOVER_DIRECTORY=sahara/tests/unit
|
|
deps =
|
|
-r{toxinidir}/requirements.txt
|
|
-r{toxinidir}/test-requirements.txt
|
|
commands = ostestr {posargs}
|
|
passenv = http_proxy HTTP_PROXY https_proxy HTTPS_PROXY no_proxy NO_PROXY
|
|
|
|
[testenv:cover]
|
|
basepython = python3
|
|
commands = {toxinidir}/tools/cover.sh {posargs}
|
|
|
|
[testenv:debug-py27]
|
|
basepython = python2.7
|
|
commands = oslo_debug_helper -t sahara/tests/unit {posargs}
|
|
|
|
[testenv:debug-py35]
|
|
basepython = python3.5
|
|
commands = oslo_debug_helper -t sahara/tests/unit {posargs}
|
|
|
|
[testenv:pep8]
|
|
basepython = python3
|
|
deps =
|
|
-c{env:UPPER_CONSTRAINTS_FILE:https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt}
|
|
-r{toxinidir}/requirements.txt
|
|
-r{toxinidir}/test-requirements.txt
|
|
-r{toxinidir}/doc/requirements.txt
|
|
commands =
|
|
flake8 {posargs}
|
|
doc8 doc/source
|
|
# Run bashate checks
|
|
bash -c "find sahara -iname '*.sh' -print0 | xargs -0 bashate -v"
|
|
bash -c "find devstack -not -name \*.template -and -not -name README.rst -and -not -name \*.json -type f -print0 | xargs -0 bashate -v"
|
|
# Run security linter
|
|
bandit -c bandit.yaml -r sahara -n5 -p sahara_default -x tests
|
|
|
|
[testenv:genpolicy]
|
|
basepython = python3
|
|
commands = oslopolicy-sample-generator --config-file tools/config/sahara-policy-generator.conf
|
|
|
|
[testenv:venv]
|
|
basepython = python3
|
|
commands = {posargs}
|
|
|
|
[testenv:images]
|
|
sitepackages = True
|
|
commands = {posargs}
|
|
|
|
[testenv:docs]
|
|
basepython = python3
|
|
deps =
|
|
-c{env:UPPER_CONSTRAINTS_FILE:https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt}
|
|
-r{toxinidir}/doc/requirements.txt
|
|
commands =
|
|
rm -rf doc/html doc/build
|
|
rm -rf api-ref/build api-ref/html
|
|
rm -rf doc/source/apidoc doc/source/api
|
|
sphinx-build -W -b html doc/source doc/build/html
|
|
sphinx-build -W -b html -d api-ref/build/doctrees api-ref/source api-ref/build/html
|
|
whereto doc/source/_extra/.htaccess doc/test/redirect-tests.txt
|
|
whitelist_externals = rm
|
|
|
|
[testenv:api-ref]
|
|
basepython = python3
|
|
deps =
|
|
-c{env:UPPER_CONSTRAINTS_FILE:https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt}
|
|
-r{toxinidir}/doc/requirements.txt
|
|
install_command = pip install -U --force-reinstall {opts} {packages}
|
|
commands =
|
|
rm -rf api-ref/build api-ref/html
|
|
sphinx-build -W -b html -d api-ref/build/doctrees api-ref/source api-ref/build/html
|
|
whitelist_externals = rm
|
|
|
|
|
|
[testenv:pylint]
|
|
basepython = python3
|
|
setenv = VIRTUAL_ENV={envdir}
|
|
commands = bash tools/lintstack.sh
|
|
|
|
[testenv:genconfig]
|
|
basepython = python3
|
|
commands =
|
|
oslo-config-generator --config-file tools/config/config-generator.sahara.conf \
|
|
--output-file etc/sahara/sahara.conf.sample
|
|
|
|
[testenv:releasenotes]
|
|
basepython = python3
|
|
deps =
|
|
-c{env:UPPER_CONSTRAINTS_FILE:https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt}
|
|
-r{toxinidir}/doc/requirements.txt
|
|
commands =
|
|
rm -rf releasenotes/build releasenotes/html
|
|
sphinx-build -a -E -W -d releasenotes/build/doctrees -b html releasenotes/source releasenotes/build/html
|
|
whitelist_externals = rm
|
|
|
|
[testenv:debug]
|
|
basepython = python3
|
|
# It runs tests from the specified dir (default is sahara/tests)
|
|
# in interactive mode, so, you could use pbr for tests debug.
|
|
# Example usage: tox -e debug -- -t sahara/tests/unit some.test.path
|
|
# https://docs.openstack.org/oslotest/latest/features.html#debugging-with-oslo-debug-helper
|
|
commands = oslo_debug_helper -t sahara/tests/unit {posargs}
|
|
|
|
[testenv:bandit]
|
|
basepython = python3
|
|
deps = -r{toxinidir}/test-requirements-bandit.txt
|
|
commands = bandit -c bandit.yaml -r sahara -n5 -p sahara_default -x tests
|
|
|
|
[flake8]
|
|
show-source = true
|
|
builtins = _
|
|
exclude=.venv,.git,.tox,dist,doc,*lib/python*,*egg,tools
|
|
# [H904] Delay string interpolations at logging calls
|
|
# [H106] Don't put vim configuration in source files
|
|
# [H203] Use assertIs(Not)None to check for None.
|
|
# [H204] Use assert(Not)Equal to check for equality
|
|
# [H205] Use assert(Greater|Less)(Equal) for comparison
|
|
enable-extensions=H904,H106,H203,H204,H205
|
|
|
|
[hacking]
|
|
import_exceptions = sahara.i18n
|
|
local-check-factory = sahara.utils.hacking.checks.factory
|
|
|
|
[testenv:bindep]
|
|
basepython = python3
|
|
# 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 test
|
|
|
|
[testenv:lower-constraints]
|
|
basepython = python3
|
|
deps =
|
|
-c{toxinidir}/lower-constraints.txt
|
|
-r{toxinidir}/test-requirements.txt
|
|
-r{toxinidir}/requirements.txt
|