masakari-dashboard/tox.ini

105 lines
3.0 KiB
INI

[tox]
envlist = pep8,py36,py39
minversion = 3.18.0
ignore_basepython_conflict = True
[testenv]
basepython = python3
usedevelop = True
setenv = VIRTUAL_ENV={envdir}
BRANCH_NAME=master
CLIENT_NAME=masakari-dashboard
NOSE_WITH_OPENSTACK=1
NOSE_OPENSTACK_COLOR=1
NOSE_OPENSTACK_RED=0.05
NOSE_OPENSTACK_YELLOW=0.025
NOSE_OPENSTACK_SHOW_ELAPSED=1
deps =
-c{env:TOX_CONSTRAINTS_FILE:https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt}
-r{toxinidir}/requirements.txt
-r{toxinidir}/test-requirements.txt
commands =
python manage.py test {posargs} --settings=masakaridashboard.test.settings --verbosity 2
[testenv:linters]
skip_install = True
deps =
{[testenv:pep8]deps}
{[testenv:bandit]deps}
commands =
{[testenv:pep8]commands}
{[testenv:bandit]commands}
[testenv:pep8]
skip_install = True
deps =
-c{env:TOX_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master}
hacking
commands =
flake8 {posargs}
[testenv:bandit]
skip_install = True
deps =
-c{env:TOX_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master}
bandit
commands =
bandit -r masakaridashboard
[testenv:venv]
commands = {posargs}
[testenv:cover]
commands =
coverage erase
coverage run {toxinidir}/manage.py test masakaridashboard --settings=masakaridashboard.test.settings {posargs}
coverage xml --omit '.tox/cover/*' -o 'cover/coverage.xml'
coverage html --omit '.tox/cover/*' -d 'cover/htmlcov'
[testenv:eslint]
allowlist_externals = npm
commands =
npm install
npm run postinstall
npm run lint
[testenv:karma]
# NOTE(shu-mutou): Until PhantomJS setup get reliable, we use
# Chromium for JS test. And npm can't launch Chromium via tox.
#allowlist_externals = npm
#commands =
# npm install
# npm run postinstall
# npm run test
allowlist_externals = echo
commands =
echo "npm can't launch Chromium via tox."
echo "nexecute `npm run test`"
[testenv:docs]
# We need to install horizon dependencies to build module references
deps =
-c{env:TOX_CONSTRAINTS_FILE:https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt}
-r{toxinidir}/requirements.txt
-r{toxinidir}/doc/requirements.txt
commands =
sphinx-build -W -b html doc/source doc/build/html
[testenv:releasenotes]
# There is no need to install horizon.
skip_install = True
deps =
-c{env:TOX_CONSTRAINTS_FILE:https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt}
-r{toxinidir}/doc/requirements.txt
commands =
sphinx-build -a -E -W -d releasenotes/build/doctrees -b html releasenotes/source releasenotes/build/html
[flake8]
# F405 TEMPLATES may be undefined, or defined from star imports
# (because it is not easy to avoid this in openstack_dashboard.test.settings)
# (W503 and W504 are incompatible and we need to choose one of them.
# Existing codes follows W503, so we disable W504.)
ignore = F405,W504
exclude = .venv,.git,.tox,dist,*lib/python*,*egg,build,node_modules
max-complexity = 20