[tox] env_list = py{36,37,38,39,310,311} lint type labels = test = py{36,37,38,39,310,311} lint = ruff, isort, autopep8, pylint type = mypy [testenv] description = "run osbuild unit tests" deps = pytest pytest-xdist jsonschema mako iniparse pyyaml pytoml pykickstart # required by pykickstart but not pulled in automatically :/ requests setenv = LINTABLES = osbuild/ assemblers/* devices/* inputs/* mounts/* runners/* sources/* stages/*.* stages/test/*.py tools/ TYPEABLES = osbuild passenv = TEST_CATEGORY commands = bash -c 'python -m pytest --pyargs --rootdir=. {env:TEST_CATEGORY} {env:TEST_WORKERS}' allowlist_externals = bash [testenv:ruff] deps = ruff==0.0.263 commands = bash -c 'python -m ruff {env:LINTABLES}' [testenv:isort] deps = isort==5.12.0 commands = bash -c 'python -m isort --check --diff {env:LINTABLES}' [testenv:autopep8] deps = autopep8==2.0.2 pycodestyle==2.10.0 commands = bash -c 'python -m autopep8 --diff --max-line-length 120 -a -a -a -j0 -r --exit-code {env:LINTABLES}' [testenv:pylint] deps = pylint==3.0.2 commands = bash -c 'python -m pylint {env:LINTABLES}' [testenv:mypy] deps = mypy==1.2.0 commands = bash -c 'python -m mypy {env:TYPEABLES}'