Skip to content

Commit ebac384

Browse files
committed
Adopt packaging standards
1 parent 0e8abaf commit ebac384

File tree

4 files changed

+104
-90
lines changed

4 files changed

+104
-90
lines changed

kubernetes/poetry.lock

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

kubernetes/pyproject.toml

Lines changed: 51 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,57 @@
11
# Copyright 2022 Canonical Ltd.
22
# See LICENSE file for licensing details.
33

4+
[project]
5+
name = "mysql-router-k8s-operator"
6+
version = "0.0.1"
7+
dynamic = ["dependencies", "requires-python"]
8+
9+
[dependency-groups]
10+
charm-libs = [
11+
# data_platform_libs/v0/data_interfaces.py
12+
"ops>=2.0.0",
13+
# grafana_k8s/grafana_dashboard.py
14+
"cosl>= 0.0.50",
15+
# tempo_coordinator_k8s/v0/charm_tracing.py
16+
"opentelemetry-exporter-otlp-proto-http==1.21.0",
17+
# tempo_coordinator_k8s/v0/tracing.py
18+
"pydantic",
19+
# tls_certificates_interface/v1/tls_certificates.py
20+
"cryptography",
21+
"jsonschema",
22+
]
23+
format = [
24+
"ruff>=0.12.11,<0.13",
25+
]
26+
lint = [
27+
"ruff>=0.12.11,<0.13",
28+
"codespell>=2.4.1,<3",
29+
]
30+
unit = [
31+
"pytest>=8.4.1,<9",
32+
"pytest-xdist>=3.8.0,<4",
33+
"pytest-forked>=1.6.0,<2", # Workaround to deal with memory leaks in scenario tests
34+
"pytest-cov>=6.2.1,<7",
35+
"ops-scenario>=6.0.3,<7,<6.0.4", # 6.0.4 requires ops >= 2.12
36+
"ops>=2.9.0,<3",
37+
]
38+
integration = [
39+
"pytest>=8.4.1,<9",
40+
"pytest-operator>=0.43.1,<0.44",
41+
"requests>=2.32.5,<3",
42+
"juju>=3.6.0.0,<4",
43+
"mysql-connector-python>=9.5.0,<10",
44+
"pyyaml>=6.0.2,<7",
45+
"tenacity>=9.1.2,<10",
46+
"allure-pytest>=2.15.0,<3",
47+
"allure-pytest-default-results>=0.1.3,<0.2",
48+
"tomli>=2.2.1,<3",
49+
"tomli-w>=1.2.0,<2",
50+
]
51+
build-refresh-version = [
52+
"charm-refresh-build-version>=0.4.0,<0.5",
53+
]
54+
455
[tool.poetry]
556
package-mode = false
657
requires-poetry = ">=2.0.0"
@@ -14,59 +65,15 @@ lightkube = "^0.17.2"
1465
tenacity = "^9.1.2"
1566
charm-refresh = "^3.1.0.2"
1667

17-
[tool.poetry.group.charm-libs.dependencies]
18-
# data_platform_libs/v0/data_interfaces.py
19-
ops = ">=2.0.0"
20-
# grafana_k8s/grafana_dashboard.py
21-
cosl = ">= 0.0.50"
22-
# tempo_coordinator_k8s/v0/charm_tracing.py
23-
opentelemetry-exporter-otlp-proto-http = "1.21.0"
24-
# tempo_coordinator_k8s/v0/tracing.py
25-
pydantic = "*"
26-
# tls_certificates_interface/v1/tls_certificates.py
27-
cryptography = "*"
28-
jsonschema = "*"
29-
3068
[tool.poetry.group.format]
3169
optional = true
3270

33-
[tool.poetry.group.format.dependencies]
34-
ruff = "^0.12.11"
35-
3671
[tool.poetry.group.lint]
3772
optional = true
3873

39-
[tool.poetry.group.lint.dependencies]
40-
ruff = "^0.12.11"
41-
codespell = "^2.4.1"
42-
43-
[tool.poetry.group.unit.dependencies]
44-
pytest = "^8.4.1"
45-
pytest-xdist = "^3.8.0"
46-
pytest-forked = "^1.6.0" # Workaround to deal with memory leaks in scenario tests
47-
pytest-cov = "^6.2.1"
48-
ops-scenario = "^6.0.3, <6.0.4" # 6.0.4 requires ops >= 2.12
49-
ops = "^2.9.0"
50-
51-
[tool.poetry.group.integration.dependencies]
52-
pytest = "^8.4.1"
53-
pytest-operator = "^0.43.1"
54-
requests = "^2.32.5"
55-
juju = "^3.6.0.0"
56-
mysql-connector-python = "^9.5.0"
57-
pyyaml = "^6.0.2"
58-
tenacity = "^9.1.2"
59-
allure-pytest = "^2.15.0"
60-
allure-pytest-default-results = "^0.1.3"
61-
tomli = "^2.2.1"
62-
tomli-w = "^1.2.0"
63-
6474
[tool.poetry.group.build-refresh-version]
6575
optional = true
6676

67-
[tool.poetry.group.build-refresh-version.dependencies]
68-
charm-refresh-build-version = "^0.4.0"
69-
7077
[tool.coverage.run]
7178
branch = true
7279

machines/poetry.lock

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

machines/pyproject.toml

Lines changed: 49 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,57 @@
11
# Copyright 2022 Canonical Ltd.
22
# See LICENSE file for licensing details.
33

4+
[project]
5+
name = "mysql-router-operator"
6+
version = "0.0.1"
7+
dynamic = ["dependencies", "requires-python"]
8+
9+
[dependency-groups]
10+
charm-libs = [
11+
# data_platform_libs/v0/data_interfaces.py
12+
"ops>=2.0.0",
13+
# tls_certificates_interface/v2/tls_certificates.py
14+
# tls_certificates lib v2 uses a feature only available in cryptography >=42.0.5
15+
"cryptography>=42.0.5",
16+
"jsonschema",
17+
# grafana_agent/v0/cos_agent.py
18+
"pydantic",
19+
"cosl>=0.0.50",
20+
# tempo_coordinator_k8s/v0/charm_tracing.py
21+
"opentelemetry-exporter-otlp-proto-http==1.21.0",
22+
]
23+
format = [
24+
"ruff>=0.12.11,<0.13",
25+
]
26+
lint = [
27+
"ruff>=0.12.11,<0.13",
28+
"codespell>=2.4.1,<3",
29+
]
30+
unit = [
31+
"pytest>=8.4.1,<9",
32+
"pytest-xdist>=3.8.0,<4",
33+
"pytest-cov>=6.2.1,<7",
34+
"ops-scenario>=6.0.3,<7,<6.0.4", # 6.0.4 requires ops >= 2.12
35+
]
36+
integration = [
37+
"pytest>=8.4.1,<9",
38+
"pytest-operator>=0.43.1,<0.44",
39+
"requests>=2.32.5,<3",
40+
"juju>=3.6.0.0,<4",
41+
"mysql-connector-python~=8.0.33",
42+
"tenacity>=9.1.2,<10",
43+
"ops>=2.9.0,<3",
44+
"allure-pytest-default-results>=0.1.3,<0.2",
45+
"tomli>=2.2.1,<3",
46+
"tomli-w>=1.2.0,<2",
47+
]
48+
build-refresh-version = [
49+
"charm-refresh-build-version>=0.4.0,<0.5",
50+
]
51+
452
[tool.poetry]
553
package-mode = false
6-
requires-poetry = ">=2.0.0"
54+
requires-poetry = ">=2.2.0"
755

856
[tool.poetry.dependencies]
957
python = "^3.10"
@@ -13,56 +61,15 @@ ops = "^2.9.0, <2.10"
1361
tenacity = "^9.1.2"
1462
charm-refresh = "^3.1.0.2"
1563

16-
[tool.poetry.group.charm-libs.dependencies]
17-
# data_platform_libs/v0/data_interfaces.py
18-
ops = ">=2.0.0"
19-
# tls_certificates_interface/v2/tls_certificates.py
20-
# tls_certificates lib v2 uses a feature only available in cryptography >=42.0.5
21-
cryptography = ">=42.0.5"
22-
jsonschema = "*"
23-
# grafana_agent/v0/cos_agent.py
24-
pydantic = "*"
25-
cosl = ">=0.0.50"
26-
# tempo_coordinator_k8s/v0/charm_tracing.py
27-
opentelemetry-exporter-otlp-proto-http = "1.21.0"
28-
2964
[tool.poetry.group.format]
3065
optional = true
3166

32-
[tool.poetry.group.format.dependencies]
33-
ruff = "^0.12.11"
34-
3567
[tool.poetry.group.lint]
3668
optional = true
3769

38-
[tool.poetry.group.lint.dependencies]
39-
ruff = "^0.12.11"
40-
codespell = "^2.4.1"
41-
42-
[tool.poetry.group.unit.dependencies]
43-
pytest = "^8.4.1"
44-
pytest-xdist = "^3.8.0"
45-
pytest-cov = "^6.2.1"
46-
ops-scenario = "^6.0.3, <6.0.4" # 6.0.4 requires ops >= 2.12
47-
48-
[tool.poetry.group.integration.dependencies]
49-
pytest = "^8.4.1"
50-
pytest-operator = "^0.43.1"
51-
requests = "^2.32.5"
52-
juju = "^3.6.0.0"
53-
mysql-connector-python = "~8.0.33"
54-
tenacity = "^9.1.2"
55-
ops = "^2.9.0"
56-
allure-pytest-default-results = "^0.1.3"
57-
tomli = "^2.2.1"
58-
tomli-w = "^1.2.0"
59-
6070
[tool.poetry.group.build-refresh-version]
6171
optional = true
6272

63-
[tool.poetry.group.build-refresh-version.dependencies]
64-
charm-refresh-build-version = "^0.4.0"
65-
6673
[tool.coverage.run]
6774
branch = true
6875

0 commit comments

Comments
 (0)