This change drops the lower-constraints test. (cherry picked from commitd08dd621c9) And fixes the pdns4 devstack plugin. We no longer need to deal with xenial or older distro versions, so we can assume that we can always install pdns4 from the distro directly and don't need the distro version check any longer. Drop a config option that was removed in pdns 4.2.x. Use mysql credentials correctly. (cherry picked from commit6f17fe10bb) Change-Id: I90af3a092296f943509833608f25522b6f8e9ab6 Depends-On: I36799ee9d4db20104377e2772c86229b8083448d Signed-off-by: Nicolas Bock <nicolas.bock@canonical.com>
190 lines
5.8 KiB
INI
190 lines
5.8 KiB
INI
[tox]
|
|
minversion = 2.0
|
|
envlist = py35,py27,py36,py37,flake8
|
|
skipsdist = True
|
|
|
|
[testenv]
|
|
usedevelop = True
|
|
install_command = pip install -c{env:UPPER_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/stein} {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 "*.py[c|o]" -delete
|
|
rm -f .testrepository/times.dbm
|
|
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:py27]
|
|
commands =
|
|
{[testenv]commands}
|
|
stestr run {posargs}
|
|
stestr slowest
|
|
|
|
[testenv:py35]
|
|
basepython = python3
|
|
commands =
|
|
{[testenv]commands}
|
|
stestr run {posargs}
|
|
|
|
[testenv:py36]
|
|
basepython = python3.6
|
|
commands =
|
|
{[testenv]commands}
|
|
stestr run {posargs}
|
|
|
|
[testenv:py37]
|
|
basepython = python3.7
|
|
commands =
|
|
{[testenv]commands}
|
|
stestr run '{posargs}'
|
|
|
|
[testenv:docs]
|
|
basepython = python3
|
|
deps =
|
|
-c{env:UPPER_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/stein}
|
|
-r{toxinidir}/requirements.txt
|
|
-r{toxinidir}/doc/requirements.txt
|
|
commands =
|
|
rm -rf doc/build
|
|
sphinx-build -W -b html doc/source doc/build/html
|
|
|
|
[testenv:cover]
|
|
basepython = python3
|
|
setenv =
|
|
{[testenv]setenv}
|
|
PYTHON=coverage run --source designate --parallel-mode
|
|
commands =
|
|
coverage erase
|
|
find . -type f -name "*.pyc" -delete
|
|
stestr run --no-subunit-trace {posargs}
|
|
coverage combine
|
|
coverage report --skip-covered
|
|
coverage html -d cover
|
|
coverage xml -o cover/coverage.xml
|
|
|
|
[testenv:bandit]
|
|
basepython = python3
|
|
deps = -r{toxinidir}/test-requirements.txt
|
|
commands = bandit -r designate -n5 -x 'designate/tests/*' -t \
|
|
B505,B504,B503,B502,B501,B604,B605,B001,B601,B602,B701,B609,B702,\
|
|
B608,B506,B312,B310,B411,B108,B103,B102,B309,B308,B302,B307,B306
|
|
|
|
[testenv:debug]
|
|
basepython = python3
|
|
commands = oslo_debug_helper -t designate/tests {posargs}
|
|
|
|
[testenv:flake8]
|
|
basepython = python3
|
|
deps = -r{toxinidir}/test-requirements.txt
|
|
commands = sh tools/pretty_flake8.sh
|
|
{[testenv:bandit]commands}
|
|
|
|
[testenv:pep8]
|
|
deps = -r{toxinidir}/test-requirements.txt
|
|
basepython = python3
|
|
commands = sh tools/pretty_flake8.sh
|
|
{[testenv:bandit]commands}
|
|
doc8 {posargs}
|
|
|
|
[testenv:genconfig]
|
|
basepython = python3
|
|
commands = oslo-config-generator --config-file=etc/designate/designate-config-generator.conf
|
|
|
|
[testenv:genpolicy]
|
|
basepython = python3
|
|
commands = oslopolicy-sample-generator --config-file etc/designate/designate-policy-generator.conf
|
|
|
|
[testenv:bashate]
|
|
basepython = python3
|
|
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]
|
|
basepython = python3
|
|
# 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:api-ref]
|
|
basepython = python3
|
|
# This environment is called from CI scripts to test and publish
|
|
# the API Ref to developer.openstack.org.
|
|
#
|
|
# we do not used -W here because we are doing some slightly tricky
|
|
# things to build a single page document, and as such, we are ok
|
|
# ignoring the duplicate stanzas warning.
|
|
commands =
|
|
rm -rf api-ref/build
|
|
sphinx-build -E -W -b html -d api-ref/build/doctrees api-ref/source api-ref/build/html
|
|
|
|
[testenv:releasenotes]
|
|
basepython = python3
|
|
deps =
|
|
-c{env:UPPER_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/stein}
|
|
-r{toxinidir}/requirements.txt
|
|
-r{toxinidir}/doc/requirements.txt
|
|
commands =
|
|
rm -rf releasenotes/build
|
|
sphinx-build -a -E -d releasenotes/build/doctrees -b html releasenotes/source releasenotes/build/html
|
|
|
|
[testenv:venv]
|
|
basepython = python3
|
|
commands = {posargs}
|
|
deps = -r{toxinidir}/requirements.txt
|
|
-r{toxinidir}/test-requirements.txt
|
|
-r{toxinidir}/doc/requirements.txt
|
|
|
|
[doc8]
|
|
ignore-path = .venv,.git,.tox,*designate/locale*,*lib/python*,*designate.egg*,api-ref/build,doc/build,doc/source/contributor/api
|
|
|
|
[flake8]
|
|
# ignored flake8 codes:
|
|
# H105 don't use author tags. We use version control instead
|
|
# H302 import only modules
|
|
# H306 imports not in alphabetical order
|
|
# H328 old style class declaration, use new style (inherit from `object`)
|
|
# 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
|
|
# H501 Do not use locals() or self.__dict__ for string formatting.
|
|
# 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 = H105,H302,H306,H238,H402,H404,H405,H501,H904,E126,E128
|
|
exclude = .venv,.git,.tox,dist,doc,*lib/python*,*egg,build,tools,.ropeproject
|
|
|
|
[hacking]
|
|
local-check-factory = designate.hacking.checks.factory
|
|
import_exceptions = designate.i18n
|