[tox]
envlist = py38,py39,pep8
minversion = 3.1.1
skipsdist = True
ignore_basepython_conflict = True

[testenv]
basepython = python3
usedevelop = True
allowlist_externals = {toxinidir}/tools/tox_install.sh
install_command = {toxinidir}/tools/tox_install.sh {env:TOX_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master} {opts} {packages}
deps =
  -r{toxinidir}/requirements.txt
  -r{toxinidir}/test-requirements.txt
setenv = VIRTUAL_ENV={envdir}
         EVENTLET_NO_GREENDNS=yes
         PYTHONHASHSEED=0
commands =
    stestr run --slowest {posargs}
sitepackages = False

[testenv:cover]
basepython = python3
setenv =
    PYTHON=coverage run --source blazarnova --parallel-mode
commands =
    stestr run '{posargs}'
    coverage combine
    coverage html -d cover
    coverage xml -o cover/coverage.xml

[testenv:pep8]
commands = flake8 {posargs}

[testenv:venv]
commands = {posargs}

[flake8]
show-source = true
builtins = _
exclude = .venv,.git,.tmp,.tox,dist,doc,*lib/python*,*egg,tools

[testenv:releasenotes]
deps = -c{env:TOX_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master}
       -r{toxinidir}/doc/requirements.txt
commands = sphinx-build -a -E -W -d releasenotes/build/doctrees --keep-going -b html releasenotes/source releasenotes/build/html
