interop/tox.ini

125 lines
5.1 KiB
INI

[tox]
envlist = docs,doc8,pep8,jsonlint,jsonschema,consistency
minversion = 3.18.0
skipsdist = True
ignore_basepython_conflict = True
[testenv]
basepython=python3
setenv =
VIRTUAL_ENV={envdir}
deps = -c{env:UPPER_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master}
-r{toxinidir}/test-requirements.txt
[testenv:venv]
commands = {posargs}
[testenv:doc8]
commands =
doc8 -e .rst doc/source
[testenv:docs]
deps = -c{env:UPPER_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master}
-r{toxinidir}/doc/requirements.txt
commands=
sphinx-build doc/source doc/build/html
[testenv:pep8]
ignore = W504
deps = {[testenv]deps}
commands=
bash tools/flake8wrap.sh
doc8 -e .rst doc/source
{[testenv:jsonlint]commands}
{[testenv:jsonschema]commands}
allowlist_externals =
sh
bash
[flake8]
# E125 is deliberately excluded.
# See https://github.com/jcrocholl/pep8/issues/126
ignore = E125,W504
exclude = .venv,.git,.tox,doc,conf.py
[testenv:jsonlint]
commands=
jsonlint -s guidelines/next.json
jsonlint -s guidelines/2015.07.json
jsonlint -s guidelines/2016.01.json
jsonlint -s guidelines/2016.08.json
jsonlint -s guidelines/2017.01.json
jsonlint -s guidelines/2017.09.json
jsonlint -s guidelines/2018.02.json
jsonlint -s guidelines/2018.11.json
jsonlint -s guidelines/2019.06.json
jsonlint -s guidelines/2019.11.json
jsonlint -s guidelines/2020.06.json
jsonlint -s guidelines/2020.11.json
jsonlint -s current_guideline
jsonlint -s doc/source/schema/1.5.json
jsonlint -s doc/source/schema/1.6.json
jsonlint -s doc/source/schema/2.0.json
jsonlint -s doc/source/schema/next.2.0.json
jsonlint -s add-ons/guidelines/dns.next.json
jsonlint -s add-ons/guidelines/dns.2018.02.json
jsonlint -s add-ons/guidelines/dns.2019.06.json
jsonlint -s add-ons/guidelines/dns.2019.11.json
jsonlint -s add-ons/guidelines/dns.2020.06.json
jsonlint -s add-ons/guidelines/dns.2020.11.json
jsonlint -s add-ons/guidelines/orchestration.next.json
jsonlint -s add-ons/guidelines/orchestration.2018.02.json
jsonlint -s add-ons/guidelines/orchestration.2019.06.json
jsonlint -s add-ons/guidelines/orchestration.2019.11.json
jsonlint -s add-ons/guidelines/orchestration.2020.06.json
jsonlint -s add-ons/guidelines/orchestration.2020.11.json
jsonlint -s add-ons/guidelines/shared_file_system.next.json
jsonlint -s add-ons/guidelines/shared_file_system.2020.11.json
jsonlint -s add-ons/dns_current_guideline
jsonlint -s add-ons/orchestration_current_guideline
jsonlint -s add-ons/shared_file_system_current_guideline
[testenv:jsonschema]
commands=
jsonschema doc/source/schema/2.0.json -i guidelines/next.json
jsonschema doc/source/schema/1.5.json -i guidelines/2015.07.json
jsonschema doc/source/schema/1.5.json -i guidelines/2016.01.json
jsonschema doc/source/schema/1.6.json -i guidelines/2016.08.json
jsonschema doc/source/schema/1.6.json -i guidelines/2017.01.json
jsonschema doc/source/schema/1.6.json -i guidelines/2017.09.json
jsonschema doc/source/schema/2.0.json -i guidelines/2018.02.json
jsonschema doc/source/schema/2.0.json -i guidelines/2018.11.json
jsonschema doc/source/schema/2.0.json -i guidelines/2019.06.json
jsonschema doc/source/schema/2.0.json -i guidelines/2019.11.json
jsonschema doc/source/schema/2.0.json -i guidelines/2020.06.json
jsonschema doc/source/schema/2.0.json -i guidelines/2020.11.json
jsonschema doc/source/schema/2.0.json -i current_guideline
jsonschema doc/source/schema/2.0.json -i doc/source/schema/next.2.0.json
jsonschema doc/source/schema/2.0.json -i add-ons/guidelines/dns.next.json
jsonschema doc/source/schema/2.0.json -i add-ons/guidelines/dns.2018.02.json
jsonschema doc/source/schema/2.0.json -i add-ons/guidelines/dns.2019.06.json
jsonschema doc/source/schema/2.0.json -i add-ons/guidelines/dns.2019.11.json
jsonschema doc/source/schema/2.0.json -i add-ons/guidelines/dns.2020.06.json
jsonschema doc/source/schema/2.0.json -i add-ons/guidelines/dns.2020.11.json
jsonschema doc/source/schema/2.0.json -i add-ons/guidelines/orchestration.next.json
jsonschema doc/source/schema/2.0.json -i add-ons/guidelines/orchestration.2018.02.json
jsonschema doc/source/schema/2.0.json -i add-ons/guidelines/orchestration.2019.06.json
jsonschema doc/source/schema/2.0.json -i add-ons/guidelines/orchestration.2019.11.json
jsonschema doc/source/schema/2.0.json -i add-ons/guidelines/orchestration.2020.06.json
jsonschema doc/source/schema/2.0.json -i add-ons/guidelines/orchestration.2020.11.json
jsonschema doc/source/schema/2.0.json -i add-ons/guidelines/shared_file_system.next.json
jsonschema doc/source/schema/2.0.json -i add-ons/guidelines/shared_file_system.2020.11.json
jsonschema doc/source/schema/2.0.json -i add-ons/dns_current_guideline
jsonschema doc/source/schema/2.0.json -i add-ons/orchestration_current_guideline
jsonschema doc/source/schema/2.0.json -i add-ons/shared_file_system_current_guideline
[testenv:consistency]
commands=
bash tools/consistency.sh {posargs}
allowlist_externals =
sh
bash
[testenv:next]
commands=python3 tools/parse_next_tests.py {posargs}