Files
designate-dashboard/tox.ini
Michael Johnson 64993055e7 Fix designate-dashboard lint
Previously the lint test was failing to run because there was no configuration file for it. This patch adds the .eslintrc file and fixes the found lint issues.
This patch also adds tox environments to run the lint and karma tests.

Change-Id: Idcef4c3ce4e9455acceed645c2530355989a7ee2
2022-06-24 21:07:13 +00:00

81 lines
2.5 KiB
INI

[tox]
minversion = 3.18.0
envlist = py38,pep8
skipsdist = True
# Automatic envs (pyXX) will only use the python version appropriate to that
# env and ignore basepython inherited from [testenv] if we set
# ignore_basepython_conflict.
ignore_basepython_conflict = True
[testenv]
basepython = python3
usedevelop = True
setenv = VIRTUAL_ENV={envdir}
NOSE_WITH_OPENSTACK=1
NOSE_OPENSTACK_COLOR=1
NOSE_OPENSTACK_RED=0.05
NOSE_OPENSTACK_YELLOW=0.025
NOSE_OPENSTACK_SHOW_ELAPSED=1
PYTHONDONTWRITEBYTECODE=1
DJANGO_SETTINGS_MODULE=designatedashboard.settings
allowlist_externals = find
deps = -c{env:TOX_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master}
-r{toxinidir}/requirements.txt
-r{toxinidir}/test-requirements.txt
commands =
find . -type f -name "*.pyc" -delete
{toxinidir}/manage.py test designatedashboard --settings=designatedashboard.tests.settings
passenv = http_proxy HTTP_PROXY https_proxy HTTPS_PROXY no_proxy NO_PROXY
[testenv:pep8]
commands = flake8
[testenv:venv]
commands = {posargs}
[testenv:cover]
commands =
coverage erase
coverage run {toxinidir}/manage.py test designatedashboard --settings=designatedashboard.tests.settings {posargs}
coverage xml --include 'designatedashboard/*' -o cover/coverage.xml
coverage html --include 'designatedashboard/*' -d cover
[testenv:docs]
deps = -r{toxinidir}/doc/requirements.txt
commands = sphinx-build -W -b html -d doc/build/doctrees doc/source doc/build/html
[testenv:pdf-docs]
deps = -r{toxinidir}/doc/requirements.txt
envdir = {toxworkdir}/docs
allowlist_externals =
make
commands =
sphinx-build -W -b latex doc/source doc/build/pdf
make -C doc/build/pdf
[flake8]
# E123, E125 skipped as they are invalid PEP-8.
# F405 TEMPLATES may be undefined, or defined from star imports.
# (because it is not easy to avoid this in openstack_dashboard.test.settings)
# W504 line break after binary operator
show-source = True
ignore = E123,E125,F405,W504
builtins = _
exclude=.venv,.git,.tox,dist,doc,*openstack/common*,*lib/python*,*egg,build,releasenotes,node_modules
[testenv:releasenotes]
commands = sphinx-build -a -E -d releasenotes/build/doctrees -b html releasenotes/source releasenotes/build/html
[testenv:eslint]
# npm must be installed on the system, for example
# sudo apt-get install npm
commands = npm install
npm run lint
[testenv:karma]
# npm must be installed on the system, for example
# sudo apt-get install npm
commands = npm install
npm test