[tox]
minversion = 2.0
envlist = pep8
skipsdist = True

[testenv]
usedevelop = True
install_command = pip install {opts} {packages}
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
setenv =
    VIRTUAL_ENV={envdir}
  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:pep8]
basepython = python2.7
commands = sh tools/pretty_flake8.sh


[testenv:docs]
commands = rm -rf doc/build
           sphinx-build -E -W -b html doc/source doc/build/html

[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:venv]
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_tempest_plugin.hacking.checks.factory

