[tox]
minversion = 2.0
envlist = py36,pep8,bandit-baseline
skipsdist = True

[testenv]
basepython=python3
usedevelop = True
passenv = http_proxy HTTP_PROXY https_proxy HTTPS_PROXY no_proxy NO_PROXY
install_command = pip install -c{env:UPPER_CONSTRAINTS_FILE:https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt} {opts} {packages}
setenv =
   VIRTUAL_ENV={envdir}
   PYTHONWARNINGS=default::DeprecationWarning

deps = -r {toxinidir}/requirements.txt
       -r {toxinidir}/test-requirements.txt

commands =
    find . -type f -name "*.pyc" -delete
    stestr run --slowest {posargs}

whitelist_externals =
  bash
  find

[testenv:bandit-baseline]
deps = .[bandit]
       -r {toxinidir}/test-requirements.txt

commands = bandit-baseline -r orm -n 5 -c bandit.yaml

[testenv:pep8]
basepython=python3
commands =
  flake8 {posargs}

[testenv:venv]
commands = {posargs}

[testenv:cover]
commands =
  coverage erase
  stestr run --slowest {posargs}
  coverage combine
  coverage html -d cover
  coverage xml -o cover/coverage.xml
  coverage report --show-missing

[testenv:docs]
deps = -r{toxinidir}/doc/requirements.txt
commands = python setup.py build_sphinx

[testenv:releasenotes]
deps = -r{toxinidir}/doc/requirements.txt
commands =
  rm -rf releasenotes/build
  sphinx-build -a -E -W -d releasenotes/build/doctrees -b html releasenotes/source releasenotes/build/html
whitelist_externals =
  rm

[testenv:debug]
commands = oslo_debug_helper {posargs}

[testenv:genconfig]
commands = oslo-config-generator --config-file=tools/config/ranger-config-generator.conf

[flake8]
show-source = True
ignore = H301,F821,H202,H101,H104,H238,H401,H405,E501,F811,F403,H233,F841,H903,W503
builtins = _
exclude=.venv,.git,.tox,dist,doc,*lib/python*,*egg,build