-
Notifications
You must be signed in to change notification settings - Fork 1
/
tox.ini
46 lines (40 loc) · 1.19 KB
/
tox.ini
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
[tox]
envlist = py,typing,lint,docs,coverage-report
isolated_build = True
[testenv]
description = Run pytest.
deps =
-r{toxinidir}/requirements/main.txt
-r{toxinidir}/requirements/dev.txt
setenv =
SEMAPHORE_PHALANX_ENV = idfdev
SEMAPHORE_LOG_LEVEL = debug
SEMAPHORE_GITHUB_WEBHOOK_SECRET = webhooksecret
SEMAPHORE_GITHUB_APP_PRIVATE_KEY = githubprivatekey
commands =
pytest --cov=semaphore --cov-branch --cov-report= {posargs}
[testenv:coverage-report]
description = Compile coverage from each test run.
skip_install = true
deps = coverage[toml]>=5.0.2
depends =
py
commands = coverage report
[testenv:docs]
description = Build documentation (HTML) with Sphinx.
commands =
sphinx-build -n -T -b html -d {envtmpdir}/doctrees docs docs/_build/html
[testenv:lint]
description = Lint codebase by running pre-commit (Black, isort, Flake8).
skip_install = true
deps =
pre-commit
commands = pre-commit run --all-files
[testenv:typing]
description = Run mypy.
commands =
mypy src/semaphore tests
[testenv:run]
description = Run the development server with auto-reload for code changes.
usedevelop = true
commands = uvicorn semaphore.main:app --port 8080 --reload {posargs}