-
Notifications
You must be signed in to change notification settings - Fork 15
Expand file tree
/
Copy pathtox.ini
More file actions
84 lines (78 loc) · 1.78 KB
/
tox.ini
File metadata and controls
84 lines (78 loc) · 1.78 KB
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
82
83
84
[tox]
requires =
tox>=4.2
tox-uv>=1.25
env_list =
lint
mypy
docs
pkg_meta
d{60, 52, 42}-py{314, 313, 312}
skip_missing_interpreters = true
[testenv]
package = wheel
wheel_build_env = .pkg
deps =
d32: django==3.2.*
d42: django==4.2.*
d52: django==5.2.*
d60: django==6.0.*
pass_env =
PGHOST
PGPORT
PYTHONDONTWRITEBYTECODE
commands =
pytest --cov=admin_extra_buttons --cov-report=xml --junitxml {toxworkdir}{/}junit-{envname}.xml -o junit_family=legacy {posargs:tests}
dependency_groups = dev
[testenv:lint]
description = run static analysis and style check using ruff
skip_install = true
deps =
pre-commit-uv>=4.1.1
pass_env =
HOMEPATH
PROGRAMDATA
commands =
pre-commit run --all-files --show-diff-on-failure
[testenv:mypy]
runner = uv-venv-lock-runner
description = run mypy type checking
skip_install = false
commands =
mypy --config-file mypy.ini {posargs:src/}
mypy --config-file mypy.ini {posargs:tests/demoapp/}
dependency_groups = type-check
[testenv:docs]
skip_install = false
commands =
mkdocs build -d ./~build/docs
dependency_groups = docs
[testenv:pkg_meta]
description = check that the long description is valid
skip_install = true
deps =
check-wheel-contents>=0.6
twine>=5.1.1
uv>=0.5
commands =
uv build --sdist --wheel --out-dir {env_tmp_dir} .
twine check {env_tmp_dir}{/}*
check-wheel-contents --no-config {env_tmp_dir}
[testenv:security]
description = run mypy type checking
skip_install = true
commands =
trivy fs \
-q \
--license-full \
--format table \
--severity HIGH,CRITICAL \
--scanners vuln,misconfig,secret,license \
--skip-dirs tests \
src/
bandit -r src/ -lll -q
allowlist_externals =
bandit
docker
trivy
uvx