forked from yourlabs/django-cities-light
-
Notifications
You must be signed in to change notification settings - Fork 0
/
tox.ini
102 lines (93 loc) · 2.23 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
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
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
[tox]
envlist =
py{36,37,38,39}-django{22,30,31,32}{-sqlite,-mysql,-postgresql},
checkqa,
pylint,
docs
skip_missing_interpreters = True
sitepackages = False
[gh-actions]
python =
3.6: py36
3.7: py37, docs, checkqa, pylint
3.8: py38, mypy
3.9: py39
[base]
deps =
# recommended django version and other dependencies
django-ajax-selects==1.6.0
djangorestframework
[docs]
deps =
# sphinx
Sphinx==4.2.0
django-dbdiff
[test]
deps =
pytest
pytest-django
pytest-cov
coverage
pylint
pylint-django
djangorestframework
django-dbdiff
django-ajax-selects==1.6.0
django-autoslug==1.9.8
[testenv]
usedevelop = true
commands =
mysql: mysql -u root -h {env:DB_HOST} --password={env:DB_PASSWORD} --protocol tcp -e 'drop database if exists test_cities_light_test;'
postgresql: psql -U postgres -h {env:DB_HOST} -c 'drop database if exists test_cities_light_test;'
pytest -v --cov cities_light --create-db --strict -r fEsxXw {posargs:src}
allowlist_externals =
mysql
psql
deps =
{[test]deps}
django22: Django>=2.2,<3.0
django30: Django>=3.0,<3.1
django31: Django>=3.1,<3.2
django32: Django>=3.2,<4.0
postgresql: psycopg2-binary==2.8.6
mysql: mysqlclient
setenv =
PIP_ALLOW_EXTERNAL=true
PYTHONPATH=.
DJANGO_SETTINGS_MODULE=test_project.settings
CI=true
sqlite: DB_NAME=:memory:
postgresql: DB_NAME=cities_light_test
postgresql: DB_ENGINE=postgresql_psycopg2
postgresql: DB_USER=postgres
mysql: DB_NAME=cities_light_test
mysql: DB_ENGINE=mysql
mysql: DB_USER=root
passenv = TEST_* DBDIFF_* DB_* PGPASSWORD
[testenv:checkqa]
basepython = python3.7
commands = pycodestyle --ignore=E402,E124,E128 --exclude=tests,migrations src/cities_light
deps = pycodestyle
[testenv:pylint]
basepython = python3.7
commands = pylint -j 4 --load-plugins pylint_django src/cities_light -E
deps =
{[test]deps}
[testenv:dev]
commands =
deps =
{[base]deps}
{[docs]deps}
{[test]deps}
# all supported database backends
psycopg2-binary==2.8.6
mysqlclient
# ipython
ipython
[testenv:docs]
deps =
{[base]deps}
{[docs]deps}
changedir = docs
commands = make html
allowlist_externals = make