This repository has been archived on 2020-06-17. You can view files and clone it, but cannot push or open issues or pull requests.
autonomic/tox.ini
2020-04-11 22:54:28 +02:00

90 lines
2.0 KiB
INI

[tox]
envlist =
{py36,py37,py38}
lint
sort
format
type
docs
metadata-release
skip_missing_interpreters = True
isolated_build = True
[testenv]
description = run the unit tests
deps =
pytest
pytest-cov
pytest-mock
commands = pytest test/ --cov={toxinidir}/autonomic/ --no-cov-on-fail {posargs}
[testenv:lint]
description = lint the source
skipdist = True
deps = flake8
commands = flake8 {posargs} autonomic/ test/
[testenv:sort]
description = sort the source
skipdist = True
deps = isort
commands = isort {posargs:-rc -c} -sp setup.cfg autonomic/ test/
[testenv:format]
description = format the source
skipdist = True
basepython = python3.8
deps = black
commands = black {posargs:--check} autonomic/ test/
[testenv:type]
description = type check the source
basepython = python3.8
skipdist = True
deps = mypy
commands = mypy autonomic/ test/
[testenv:docs]
description = build the documentation
skipdist = True
deps =
sphinx
sphinx-autodoc-typehints
sphinx_rtd_theme
commands = python -m setup build_sphinx
[testenv:docs-livereload]
description = invoke sphinx-autobuild to build and reload the documentation
commands = python -m sphinx_autobuild docs/source docs/build
deps = sphinx-autobuild>=0.7.1,<1.0
extras = docs
[testenv:changelog]
description = draw up the new changelog
skipdist = True
passenv = VERSION
deps = towncrier
commands = towncrier --version={env:VERSION} {posargs}
[testenv:metadata-release]
description = validate the package metadata
deps = twine
commands =
rm -rf {toxworkdir}/dist
python -m setup sdist --dist-dir {toxworkdir}/dist bdist_wheel
python -m setup sdist --dist-dir {toxworkdir}/dist bdist_egg
twine check {toxworkdir}/dist/*
whitelist_externals =
rm
[testenv:release]
description = make a release
deps = {[testenv:metadata-release]deps}
commands =
rm -rf {toxworkdir}/dist
python -m setup sdist --dist-dir {toxworkdir}/dist bdist_wheel
python -m setup sdist --dist-dir {toxworkdir}/dist bdist_egg
twine upload {toxworkdir}/dist/*
whitelist_externals =
rm