-
Notifications
You must be signed in to change notification settings - Fork 135
/
setup.cfg
132 lines (115 loc) · 2.68 KB
/
setup.cfg
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
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
[metadata]
name = pylxd
version = 2.3.5
description = python library for LXD
long_description = file: README.rst
long_description_content_type = text/x-rst
author = Paul Hummer and others (see CONTRIBUTORS.rst)
author_email = [email protected]
home_page = https://ubuntu.com/lxd
classifier =
Intended Audience :: Information Technology
Intended Audience :: System Administrators
License :: OSI Approved :: Apache Software License
Operating System :: POSIX :: Linux
Programming Language :: Python :: 3
[options]
python_requires = >= 3.8
packages = find:
install_requires =
cryptography >= 3.2
python-dateutil >= 2.4.2
requests >= 2.20.0
requests-toolbelt >= 0.8.0
ws4py != 0.3.5, >= 0.3.4 # 0.3.5 is broken for websocket support
[options.extras_require]
testing =
ddt >= 0.7.0
mock-services >= 0.3
pytest-cov >= 5.0.0
pytest >= 6.1.2
# mock-services is old and unmaintained. Doesn't work with newer versions
# of requests-mock. Thus, we have to pin it down.
requests-mock < 1.2
# Python 3.12 no longer installs `setuptools` in venv
# but mock-services depends on it for `pkg_resources`
setuptools
format =
black
flake8
isort
check =
mypy
doc =
Sphinx
[flake8]
show-source = True
ignore = E203, E266, E501, W503, W504
exclude = .git, .tox, dist, doc, *egg, build, venv
[mypy]
ignore_missing_imports = True
install_types = True
non_interactive = True
warn_return_any = True
warn_unused_configs = True
[build_sphinx]
source-dir = doc/source
build-dir = doc/build
all_files = 1
[upload_sphinx]
upload-dir = doc/build/html
[tox:tox]
minversion = 1.6
envlist = lint,check,coverage,format,integration,intregration-in-lxd,migration,unit
skipsdist = True
[testenv:unit]
usedevelop = True
setenv =
PYLXD_WARNINGS=none
deps =
.[testing]
commands =
pytest {posargs:pylxd}
[testenv:integration]
passenv = LXD_*
deps =
.[testing]
commands =
pytest integration {posargs}
[testenv:integration-in-lxd]
commands =
{toxinidir}/integration/run-integration-tests-in-lxd
[testenv:migration]
commands = pytest migration {posargs}
[testenv:format]
deps =
.[format]
commands=
isort --profile black {toxinidir}
black {toxinidir}
[testenv:lint]
deps =
.[format]
commands =
black --check {toxinidir}
isort --profile black --check-only --diff {toxinidir}
flake8 {toxinidir}
[testenv:check]
deps =
.[check]
commands =
mypy -p pylxd {posargs}
[testenv:coverage]
deps =
.[testing]
commands = pytest --cov=pylxd pylxd {posargs}
[testenv:i18n]
deps =
.[i18n]
commands =
{envpython} setup.py {posargs}
[testenv:doc]
deps =
.[doc]
commands =
{envpython} setup.py build_sphinx