# Note: Run "python bootstrap.py" before running Tox, to generate metadata. # # To run Tox against all supported Python interpreters, you can set: # # export TOXENV='py27,py3{5,6,7,8},pypy,pypy3' [tox] envlist=python minversion = 3.2 requires = tox-pip-version >= 0.0.6 [helpers] # Custom pip behavior pip = python {toxinidir}/tools/tox_pip.py [testenv] deps=-r{toxinidir}/tests/requirements.txt pip_version = pip install_command = {[helpers]pip} install {opts} {packages} list_dependencies_command = {[helpers]pip} freeze --all setenv=COVERAGE_FILE={toxworkdir}/.coverage.{envname} # TODO: The passed environment variables came from copying other tox.ini files # These should probably be individually annotated to explain what needs them. passenv=APPDATA HOMEDRIVE HOMEPATH windir APPVEYOR APPVEYOR_* CI CODECOV_* TRAVIS TRAVIS_* NETWORK_REQUIRED commands=pytest --cov-config={toxinidir}/tox.ini --cov-report= {posargs} usedevelop=True [testenv:coverage] description=Combine coverage data and create report deps=coverage skip_install=True changedir={toxworkdir} setenv=COVERAGE_FILE=.coverage commands=coverage erase coverage combine coverage {posargs:xml} [testenv:codecov] description=[Only run on CI]: Upload coverage data to codecov deps=codecov skip_install=True commands=codecov -X gcov --file {toxworkdir}/coverage.xml [testenv:docs] deps = -r{toxinidir}/docs/requirements.txt skip_install=True commands = python {toxinidir}/bootstrap.py sphinx-build -W -b html -d {envtmpdir}/doctrees docs docs/build/html sphinx-build -W -b man -d {envtmpdir}/doctrees docs docs/build/man [coverage:run] source= pkg_resources setuptools omit= */_vendor/* [testenv:release] skip_install = True deps = wheel twine[keyring]>=1.13 path jaraco.tidelift passenv = TWINE_PASSWORD TIDELIFT_TOKEN setenv = TWINE_USERNAME = {env:TWINE_USERNAME:__token__} commands = python -m bootstrap python -c "import path; path.Path('dist').rmtree_p()" python setup.py release python -m twine upload dist/* python -m jaraco.tidelift.publish-release-notes