blob: 5351aa522b780044b99a1188e0ab4cb03ec6e5b6 [file] [log] [blame]
#
# Tox global configuration
#
[tox]
envlist = py36-nocover,py37-nocover,py38-nocover,py39-nocover,py310-nocover
skip_missing_interpreters = true
#
# Defaults for all environments
#
# Anything specified here is iherited by the sections
#
[testenv]
commands =
# Running with coverage reporting enabled
py{36,37,38,39,310}-!nocover: pytest --basetemp {envtmpdir} --cov=buildstream --cov-config .coveragerc {posargs}
py{36,37,38,39,310}-!nocover: mkdir -p .coverage-reports
py{36,37,38,39,310}-!nocover: mv {envtmpdir}/.coverage {toxinidir}/.coverage-reports/.coverage.{env:COVERAGE_PREFIX:}{envname}
# Running with coverage reporting disabled
py{36,37,38,39,310}-nocover: pytest --basetemp {envtmpdir} {posargs}
deps =
py{36,37,38,39,310}: -rrequirements/requirements.txt
py{36,37,38,39,310}: -rrequirements/dev-requirements.txt
py{36,37,38,39,310}: -rrequirements/plugin-requirements.txt
# Only require coverage and pytest-cov when using it
!nocover: -rrequirements/cov-requirements.txt
passenv =
BST_FORCE_BACKEND
GI_TYPELIB_PATH
INTEGRATION_CACHE
#
# These keys are not inherited by any other sections
#
setenv =
py{36,37,38,39,310}: COVERAGE_FILE = {envtmpdir}/.coverage
whitelist_externals =
py{36,37,38,39,310}:
mv
mkdir
#
# Coverage reporting
#
[testenv:coverage]
commands =
- coverage combine --rcfile={toxinidir}/.coveragerc {toxinidir}/.coverage-reports/
coverage report --rcfile={toxinidir}/.coveragerc -m
deps =
-rrequirements/requirements.txt
-rrequirements/dev-requirements.txt
-rrequirements/cov-requirements.txt
setenv =
COVERAGE_FILE = {toxinidir}/.coverage-reports/.coverage
#
# Running linters
#
[testenv:lint]
commands_pre =
# Build C extensions to allow Pylint to analyse them
{envpython} setup.py build_ext --inplace
commands =
pylint {posargs: buildstream tests doc/source/conf.py setup.py}
deps =
-rrequirements/requirements.txt
-rrequirements/dev-requirements.txt
#
# Building documentation
#
[testenv:docs]
commands =
make -C doc
# sphinx_rtd_theme < 0.4.2 breaks search functionality for Sphinx >= 1.8
deps =
sphinx == 1.8.5
sphinx-click
sphinx_rtd_theme >= 0.4.2
-rrequirements/requirements.txt
-rrequirements/plugin-requirements.txt
passenv =
BST_FORCE_SESSION_REBUILD
BST_SOURCE_CACHE
HOME
LANG
LC_ALL
whitelist_externals =
make