Skip to content
tox.ini 1.33 KiB
Newer Older
[tox]
envlist =
    {py35,py36,py37}-test
    lint
    sort
    format
    type
    docs
skip_missing_interpreters = True
isolated_build = True

[testenv]
extras = 
  test
commands = 
  pytest test/ --cov={toxinidir}/librehosters_cli/ --no-cov-on-fail {posargs}

[testenv:lint]
description = lint the source
extras = 
  lint
commands = 
  flake8 {posargs} librehosters_cli/ test/

[testenv:sort]
description = sort the source
extras = 
  sort
commands = 
  isort {posargs:-rc -c} -sp setup.cfg librehosters_cli/ test/

[testenv:format]
description = format the source
extras = 
  format
commands = 
  black {posargs:--check} librehosters_cli/ test/

[testenv:type]
description = type check the source
basepython = python3.7
extras = 
  type
commands = 
  mypy librehosters_cli/ test/

[testenv:docs]
description = build the documentation
extras = 
  docs
commands = 
  python -m setup build_sphinx

[testenv:metadata-release]
description = validate the package metadata
extras =
  pkg
commands =
  twine check .tox/dist/*

[testenv:test-release]
description = make a test release
extras =
  pkg
commands =
    python -m setup sdist bdist_wheel
    twine upload --repository-url https://test.pypi.org/legacy/ dist/*

[testenv:prod-release]
description = make a production release
extras =
  pkg
commands =
    python -m setup sdist bdist_wheel
    twine upload dist/*