1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81
|
[tox]
envlist =
py3{9,10,11,12,13}-lint
py3{9,10,11,12,13}-unit
py3{9,10,11,12,13}-bandit
py3{9,10,11,12,13}-mypy
py312-lintreadme
py312-shellcheck
py312-pydocstyle
skip_missing_interpreters = True
[pytest]
addopts=--ignore cwltool/schemas -n logical --dist worksteal
testpaths = tests
[gh-actions]
python =
3.9: py39
3.10: py310
3.11: py311
3.12: py312
3.13: py313
[testenv]
skipsdist =
py3{9,10,11,12,13}-!{unit,mypy,lintreadme} = True
description =
py3{9,10,11,12,13}-unit: Run the unit tests
py3{9,10,11,12,13}-lint: Lint the Python code
py3{9,10,11,12,13}-bandit: Search for common security issues
py3{9,10,11,12,13}-mypy: Check for type safety
py312-pydocstyle: docstring style checker
py312-shellcheck: syntax check for shell scripts
py312-lintreadme: Lint the README.rst→.md conversion
passenv =
CI
GITHUB_*
PROOT_NO_SECCOMP
APPTAINER_TMPDIR
SINGULARITY_FAKEROOT
extras =
py3{9,10,11,12,13}-unit: deps
deps =
py3{9,10,11,12,13}-{unit,lint,bandit,mypy}: -rrequirements.txt
py3{9,10,11,12,13}-{unit,mypy}: -rtest-requirements.txt
py3{9,10,11,12,13}-lint: -rlint-requirements.txt
py3{9,10,11,12,13}-bandit: bandit
py3{9,10,11,12,13}-mypy: -rmypy-requirements.txt
py312-pydocstyle: pydocstyle
py312-pydocstyle: diff-cover
py312-lintreadme: twine
py312-lintreadme: build
py312-lintreadme: readme_renderer[rst]
setenv =
LC_ALL = C.UTF-8
HOME = {envtmpdir}
commands_pre =
py3{9,10,11,12,13}-unit: python -m pip install -U pip setuptools wheel
py312-lintreadme: python -m build --outdir {distdir}
commands =
py3{9,10,11,12,13}-unit: make coverage-report coverage.xml PYTEST_EXTRA={posargs}
py3{9,10,11,12,13}-bandit: bandit -r cwltool
py3{9,10,11,12,13}-lint: make flake8 format-check codespell-check
py3{9,10,11,12,13}-mypy: make mypy PYTEST_EXTRA={posargs}
py3{9,10,11,12}-mypy: make mypyc PYTEST_EXTRA={posargs}
py312-shellcheck: make shellcheck
py312-pydocstyle: make diff_pydocstyle_report
py312-lintreadme: twine check {distdir}/*
skip_install =
py3{9,10,11,12,13}-{bandit,lint,mypy,shellcheck,pydocstyle,lintreadme}: true
allowlist_externals = make
|