-
Notifications
You must be signed in to change notification settings - Fork 4
/
pyproject.toml
74 lines (66 loc) · 1.95 KB
/
pyproject.toml
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
[tool.poetry]
name = "amalthea"
version = "0.12.3"
description = "A Kubernetes operator for interactive user sessions for Renku"
authors = ["SDSC <[email protected]>"]
readme = "README.md"
license = "Apache-2.0"
packages = [{include = "controller"}]
[tool.poetry.dependencies]
python = "^3.12"
pyyaml = "^6.0.2"
kubernetes = "^31.0.0"
jsonpatch = "^1.33"
json-merge-patch = "^0.2"
expiringdict = "^1.2.2"
jinja2 = "^3.1.4"
prometheus-client = "^0.21.1"
dataconf = "^3.3.0"
boto3 = "^1.35.82"
kopf = {extras = ["uvloop"], version = "^1.37.4"}
python-json-logger = "3.2.1" # Needed by kopf but kopf uses a wrong version which is missing APIs that kopf needs
[tool.poetry.group.dev.dependencies]
black = "^24.10.0"
flake8 = "^7.1.1"
pytest = "^8.3.4"
pylint = "^3.3.2"
pytest-mock = "^3.14.0"
flake8-pyproject = "^1.2.3"
[build-system]
requires = ["poetry-core"]
build-backend = "poetry.core.masonry.api"
[tool.pytest.ini_options]
addopts = "-v"
testpaths = [
"controller",
"tests",
"utils",
]
log_cli = false
markers = [
"culling: tests that check culling functionality and take a few minutes (per test) to complete.",
"examples: tests that launch different types of jupyter servers with Amalthea",
]
[[tool.mypy.overrides]]
module = [
"kubernetes.*",
"kopf.*",
"pytest.*",
"yaml.*",
"uvloop.*",
"prometheus_client.*",
]
ignore_missing_imports = true
[tool.black]
line-length = 120
[tool.flake8]
max-line-length = 120
extend-ignore = [
# PEP 8 recommends to treat : in slices as a binary operator with the lowest priority, and to leave an equal
# amount of space on either side, except if a parameter is omitted (e.g. ham[1 + 1 :]).
# This behaviour may raise E203 whitespace before ':' warnings in style guide enforcement tools like Flake8.
# Since E203 is not PEP 8 compliant, we tell Flake8 to ignore this warning.
# https://black.readthedocs.io/en/stable/the_black_code_style/current_style.html#slices
"E203",
"W503",
]