Skip to content
This repository was archived by the owner on Jan 23, 2026. It is now read-only.

Commit 30f4a24

Browse files
committed
Add entry points for all drivers and clients
1 parent 5d51bea commit 30f4a24

19 files changed

Lines changed: 176 additions & 169 deletions

File tree

packages/jumpstarter-driver-can/pyproject.toml

Lines changed: 7 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -10,30 +10,27 @@ authors = [
1010
readme = "README.md"
1111
license = { text = "Apache-2.0" }
1212
requires-python = ">=3.11"
13-
dependencies = [
14-
"jumpstarter",
15-
"python-can>=4.5.0",
16-
"can-isotp>=2.0.6",
17-
]
13+
dependencies = ["jumpstarter", "python-can>=4.5.0", "can-isotp>=2.0.6"]
1814

1915
[project.entry-points."jumpstarter.drivers"]
2016
Can = "jumpstarter_driver_can.driver:Can"
2117
IsoTpPython = "jumpstarter_driver_can.driver:IsoTpPython"
2218
IsoTpSocket = "jumpstarter_driver_can.driver:IsoTpSocket"
2319

20+
[project.entry-points."jumpstarter.clients"]
21+
CanClient = "jumpstarter_driver_can.client:CanClient"
22+
IsoTpClient = "jumpstarter_driver_can.client:IsoTpClient"
23+
2424
[dependency-groups]
25-
dev = [
26-
"pytest>=8.3.2",
27-
"pytest-cov>=5.0.0",
28-
]
25+
dev = ["pytest>=8.3.2", "pytest-cov>=5.0.0"]
2926

3027
[tool.hatch.metadata.hooks.vcs.urls]
3128
Homepage = "https://jumpstarter.dev"
3229
source_archive = "https://github.com/jumpstarter-dev/repo/archive/{commit_hash}.zip"
3330

3431
[tool.hatch.version]
3532
source = "vcs"
36-
raw-options = { 'root' = '../../'}
33+
raw-options = { 'root' = '../../' }
3734

3835
[build-system]
3936
requires = ["hatchling", "hatch-vcs"]

packages/jumpstarter-driver-dutlink/pyproject.toml

Lines changed: 11 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -11,15 +11,15 @@ readme = "README.md"
1111
license = { text = "Apache-2.0" }
1212
requires-python = ">=3.11"
1313
dependencies = [
14-
"jumpstarter",
15-
"jumpstarter-driver-composite",
16-
"jumpstarter-driver-pyserial",
17-
"jumpstarter-driver-opendal",
18-
"jumpstarter-driver-network",
19-
"jumpstarter-driver-power",
20-
"pyudev>=0.24.3",
21-
"pyusb>=1.2.1",
22-
"asyncclick>=8.1.7.2"
14+
"jumpstarter",
15+
"jumpstarter-driver-composite",
16+
"jumpstarter-driver-pyserial",
17+
"jumpstarter-driver-opendal",
18+
"jumpstarter-driver-network",
19+
"jumpstarter-driver-power",
20+
"pyudev>=0.24.3",
21+
"pyusb>=1.2.1",
22+
"asyncclick>=8.1.7.2",
2323
]
2424

2525
[project.entry-points."jumpstarter.drivers"]
@@ -29,18 +29,15 @@ DutlinkStorageMux = "jumpstarter_driver_dutlink.driver:DutlinkStorageMux"
2929
DutlinkPower = "jumpstarter_driver_dutlink.driver:DutlinkPower"
3030

3131
[dependency-groups]
32-
dev = [
33-
"pytest>=8.3.2",
34-
"pytest-cov>=5.0.0",
35-
]
32+
dev = ["pytest>=8.3.2", "pytest-cov>=5.0.0"]
3633

3734
[tool.hatch.metadata.hooks.vcs.urls]
3835
Homepage = "https://jumpstarter.dev"
3936
source_archive = "https://github.com/jumpstarter-dev/repo/archive/{commit_hash}.zip"
4037

4138
[tool.hatch.version]
4239
source = "vcs"
43-
raw-options = { 'root' = '../../'}
40+
raw-options = { 'root' = '../../' }
4441

4542
[build-system]
4643
requires = ["hatchling", "hatch-vcs"]

packages/jumpstarter-driver-flashers/pyproject.toml

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -21,9 +21,15 @@ dependencies = [
2121
"jumpstarter-driver-uboot",
2222
]
2323

24+
[project.entry-points."jumpstarter.drivers"]
25+
BaseFlasher = "jumpstarter_driver_flashers.driver:BaseFlasher"
26+
27+
[project.entry-points."jumpstarter.clients"]
28+
BaseFlasherClient = "jumpstarter_driver_flashers.client:BaseFlasherClient"
29+
2430
[tool.hatch.version]
2531
source = "vcs"
26-
raw-options = { 'root' = '../../'}
32+
raw-options = { 'root' = '../../' }
2733

2834
[tool.hatch.metadata.hooks.vcs.urls]
2935
Homepage = "https://jumpstarter.dev"
@@ -44,7 +50,4 @@ requires = ["hatchling", "hatch-vcs"]
4450
build-backend = "hatchling.build"
4551

4652
[dependency-groups]
47-
dev = [
48-
"pytest-cov>=6.0.0",
49-
"pytest>=8.3.3",
50-
]
53+
dev = ["pytest-cov>=6.0.0", "pytest>=8.3.3"]

packages/jumpstarter-driver-http/pyproject.toml

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,7 @@ name = "jumpstarter-driver-http"
33
dynamic = ["version", "urls"]
44
description = "Exporter HTTP service driver"
55
readme = "README.md"
6-
authors = [
7-
{ name = "Benny Zlotnik", email = "bzlotnik@redhat.com" }
8-
]
6+
authors = [{ name = "Benny Zlotnik", email = "bzlotnik@redhat.com" }]
97
requires-python = ">=3.11"
108
dependencies = [
119
"anyio>=4.6.2.post1",
@@ -15,9 +13,15 @@ dependencies = [
1513
"yarl>=1.18.3",
1614
]
1715

16+
[project.entry-points."jumpstarter.drivers"]
17+
HttpServer = "jumpstarter_driver_http.driver:HttpServer"
18+
19+
[project.entry-points."jumpstarter.clients"]
20+
HttpServerClient = "jumpstarter_driver_http.client:HttpServerClient"
21+
1822
[tool.hatch.version]
1923
source = "vcs"
20-
raw-options = { 'root' = '../../'}
24+
raw-options = { 'root' = '../../' }
2125

2226
[tool.hatch.metadata.hooks.vcs.urls]
2327
Homepage = "https://jumpstarter.dev"

packages/jumpstarter-driver-network/pyproject.toml

Lines changed: 14 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -10,10 +10,10 @@ readme = "README.md"
1010
license = { text = "Apache-2.0" }
1111
requires-python = ">=3.11"
1212
dependencies = [
13-
"jumpstarter",
14-
"pexpect>=4.9.0",
15-
"fabric>=3.2.2",
16-
"wsproto>=1.2.0"
13+
"jumpstarter",
14+
"pexpect>=4.9.0",
15+
"fabric>=3.2.2",
16+
"wsproto>=1.2.0",
1717
]
1818

1919
[project.entry-points."jumpstarter.drivers"]
@@ -22,6 +22,10 @@ UdpNetwork = "jumpstarter_driver_network.driver:UdpNetwork"
2222
UnixNetwork = "jumpstarter_driver_network.driver:UnixNetwork"
2323
EchoNetwork = "jumpstarter_driver_network.driver:EchoNetwork"
2424

25+
[project.entry-points."jumpstarter.clients"]
26+
NetworkClient = "jumpstarter_driver_network.client:NetworkClient"
27+
DbusNetworkClient = "jumpstarter_driver_network.client:DbusNetworkClient"
28+
2529
[project.entry-points."jumpstarter.adapters"]
2630
TcpPortforward = "jumpstarter_driver_network.adapters:TcpPortforwardAdapter"
2731
UnixPortforward = "jumpstarter_driver_network.adapters:UnixPortforwardAdapter"
@@ -30,11 +34,11 @@ Novnc = "jumpstarter_driver_network.adapters:NovncAdapter"
3034

3135
[dependency-groups]
3236
dev = [
33-
"pytest>=8.3.2",
34-
"pytest-cov>=5.0.0",
35-
"types-paramiko>=3.5.0.20240928",
36-
"types-pexpect>=4.9.0.20241208",
37-
"websocket-client>=1.8.0",
37+
"pytest>=8.3.2",
38+
"pytest-cov>=5.0.0",
39+
"types-paramiko>=3.5.0.20240928",
40+
"types-pexpect>=4.9.0.20241208",
41+
"websocket-client>=1.8.0",
3842
]
3943

4044
[tool.hatch.metadata.hooks.vcs.urls]
@@ -43,7 +47,7 @@ source_archive = "https://github.com/jumpstarter-dev/repo/archive/{commit_hash}.
4347

4448
[tool.hatch.version]
4549
source = "vcs"
46-
raw-options = { 'root' = '../../'}
50+
raw-options = { 'root' = '../../' }
4751

4852
[build-system]
4953
requires = ["hatchling", "hatch-vcs"]

packages/jumpstarter-driver-opendal/pyproject.toml

Lines changed: 14 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -9,28 +9,31 @@ authors = [
99
readme = "README.md"
1010
license = { text = "Apache-2.0" }
1111
requires-python = ">=3.11"
12-
dependencies = [
13-
"jumpstarter",
14-
"opendal>=0.45.8",
15-
"asyncclick>=8.1.7.2"
16-
]
12+
dependencies = ["jumpstarter", "opendal>=0.45.8", "asyncclick>=8.1.7.2"]
13+
14+
[project.entry-points."jumpstarter.drivers"]
15+
Opendal = "jumpstarter_driver_opendal.driver:Opendal"
16+
MockFlasher = "jumpstarter_driver_opendal.driver:MockFlasher"
17+
MockStorageMux = "jumpstarter_driver_opendal.driver:MockStorageMux"
1718

1819
[project.entry-points."jumpstarter.adapters"]
19-
Opendal = "jumpstarter_driver_opendal.adapters:OpendalAdapter"
20+
OpendalAdapter = "jumpstarter_driver_opendal.adapters:OpendalAdapter"
21+
22+
[project.entry-points."jumpstarter.clients"]
23+
OpendalClient = "jumpstarter_driver_opendal.client:OpendalClient"
24+
FlasherClient = "jumpstarter_driver_opendal.client:FlasherClient"
25+
StorageMuxClient = "jumpstarter_driver_opendal.client:StorageMuxClient"
2026

2127
[dependency-groups]
22-
dev = [
23-
"pytest>=8.3.2",
24-
"pytest-cov>=5.0.0",
25-
]
28+
dev = ["pytest>=8.3.2", "pytest-cov>=5.0.0"]
2629

2730
[tool.hatch.metadata.hooks.vcs.urls]
2831
Homepage = "https://jumpstarter.dev"
2932
source_archive = "https://github.com/jumpstarter-dev/repo/archive/{commit_hash}.zip"
3033

3134
[tool.hatch.version]
3235
source = "vcs"
33-
raw-options = { 'root' = '../../'}
36+
raw-options = { 'root' = '../../' }
3437

3538
[build-system]
3639
requires = ["hatchling", "hatch-vcs"]

packages/jumpstarter-driver-power/pyproject.toml

Lines changed: 7 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -9,29 +9,25 @@ authors = [
99
readme = "README.md"
1010
license = { text = "Apache-2.0" }
1111
requires-python = ">=3.11"
12-
dependencies = [
13-
"jumpstarter",
14-
"pyserial>=3.5",
15-
"asyncclick>=8.1.7.2"
16-
]
12+
dependencies = ["jumpstarter", "pyserial>=3.5", "asyncclick>=8.1.7.2"]
1713

1814
[project.entry-points."jumpstarter.drivers"]
1915
MockPower = "jumpstarter_driver_power.driver:MockPower"
16+
SyncMockPower = "jumpstarter_driver_power.driver:SyncMockPower"
17+
18+
[project.entry-points."jumpstarter.clients"]
19+
PowerClient = "jumpstarter_driver_power.client:PowerClient"
2020

2121
[dependency-groups]
22-
dev = [
23-
"pytest>=8.3.2",
24-
"pytest-cov>=5.0.0",
25-
"trio>=0.28.0"
26-
]
22+
dev = ["pytest>=8.3.2", "pytest-cov>=5.0.0", "trio>=0.28.0"]
2723

2824
[tool.hatch.metadata.hooks.vcs.urls]
2925
Homepage = "https://jumpstarter.dev"
3026
source_archive = "https://github.com/jumpstarter-dev/repo/archive/{commit_hash}.zip"
3127

3228
[tool.hatch.version]
3329
source = "vcs"
34-
raw-options = { 'root' = '../../'}
30+
raw-options = { 'root' = '../../' }
3531

3632
[build-system]
3733
requires = ["hatchling", "hatch-vcs"]

packages/jumpstarter-driver-probe-rs/pyproject.toml

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,7 @@ dynamic = ["version", "urls"]
44
description = "rust probe-rs driver for jumpstarter"
55
readme = "README.md"
66
license = { text = "Apache-2.0" }
7-
authors = [
8-
{ name = "Miguel Angel Ajo", email = "miguelangel@ajo.es" }
9-
]
7+
authors = [{ name = "Miguel Angel Ajo", email = "miguelangel@ajo.es" }]
108
requires-python = ">=3.11"
119
dependencies = [
1210
"anyio>=4.6.2.post1",
@@ -15,9 +13,15 @@ dependencies = [
1513
"jumpstarter-driver-opendal",
1614
]
1715

16+
[project.entry-points."jumpstarter.drivers"]
17+
ProbeRs = "jumpstarter_driver_probe_rs.driver:ProbeRs"
18+
19+
[project.entry-points."jumpstarter.clients"]
20+
ProbeRsClient = "jumpstarter_driver_probe_rs.client:ProbeRsClient"
21+
1822
[tool.hatch.version]
1923
source = "vcs"
20-
raw-options = { 'root' = '../../'}
24+
raw-options = { 'root' = '../../' }
2125

2226
[tool.hatch.metadata.hooks.vcs.urls]
2327
Homepage = "https://jumpstarter.dev"
@@ -34,7 +38,4 @@ requires = ["hatchling", "hatch-vcs"]
3438
build-backend = "hatchling.build"
3539

3640
[dependency-groups]
37-
dev = [
38-
"pytest-cov>=6.0.0",
39-
"pytest>=8.3.3",
40-
]
41+
dev = ["pytest-cov>=6.0.0", "pytest>=8.3.3"]

packages/jumpstarter-driver-pyserial/pyproject.toml

Lines changed: 16 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -10,27 +10,34 @@ readme = "README.md"
1010
license = { text = "Apache-2.0" }
1111
requires-python = ">=3.11"
1212
dependencies = [
13-
"jumpstarter",
14-
"jumpstarter-driver-network",
15-
"pyserial>=3.5",
16-
"asyncclick>=8.1.7.2"
13+
"jumpstarter",
14+
"jumpstarter-driver-network",
15+
"pyserial>=3.5",
16+
"asyncclick>=8.1.7.2",
1717
]
1818

1919
[dependency-groups]
2020
dev = [
21-
"pytest>=8.3.2",
22-
"pytest-cov>=5.0.0",
23-
"types-pexpect>=4.9.0.20241208",
24-
"types-pyserial>=3.5.0.20250130",
21+
"pytest>=8.3.2",
22+
"pytest-cov>=5.0.0",
23+
"types-pexpect>=4.9.0.20241208",
24+
"types-pyserial>=3.5.0.20250130",
2525
]
2626

27+
[project.entry-points."jumpstarter.drivers"]
28+
AsyncSerial = "jumpstarter_driver_pyserial.driver:AsyncSerial"
29+
PySerial = "jumpstarter_driver_pyserial.driver:PySerial"
30+
31+
[project.entry-points."jumpstarter.clients"]
32+
PySerialClient = "jumpstarter_driver_pyserial.client:PySerialClient"
33+
2734
[tool.hatch.metadata.hooks.vcs.urls]
2835
Homepage = "https://jumpstarter.dev"
2936
source_archive = "https://github.com/jumpstarter-dev/repo/archive/{commit_hash}.zip"
3037

3138
[tool.hatch.version]
3239
source = "vcs"
33-
raw-options = { 'root' = '../../'}
40+
raw-options = { 'root' = '../../' }
3441

3542
[build-system]
3643
requires = ["hatchling", "hatch-vcs"]

packages/jumpstarter-driver-qemu/pyproject.toml

Lines changed: 18 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -11,30 +11,34 @@ readme = "README.md"
1111
license = { text = "Apache-2.0" }
1212
requires-python = ">=3.11"
1313
dependencies = [
14-
"jumpstarter",
15-
"jumpstarter-driver-composite",
16-
"jumpstarter-driver-network",
17-
"jumpstarter-driver-opendal",
18-
"jumpstarter-driver-power",
19-
"jumpstarter-driver-pyserial",
20-
"pyyaml>=6.0.2",
21-
"qemu-qmp>=0.0.3",
14+
"jumpstarter",
15+
"jumpstarter-driver-composite",
16+
"jumpstarter-driver-network",
17+
"jumpstarter-driver-opendal",
18+
"jumpstarter-driver-power",
19+
"jumpstarter-driver-pyserial",
20+
"pyyaml>=6.0.2",
21+
"qemu-qmp>=0.0.3",
2222
]
2323

2424
[dependency-groups]
25-
dev = [
26-
"pytest>=8.3.2",
27-
"pytest-cov>=5.0.0",
28-
"requests>=2.32.3",
29-
]
25+
dev = ["pytest>=8.3.2", "pytest-cov>=5.0.0", "requests>=2.32.3"]
26+
27+
[project.entry-points."jumpstarter.drivers"]
28+
QemuFlasher = "jumpstarter_driver_qemu.driver:QemuFlasher"
29+
QemuPower = "jumpstarter_driver_qemu.driver:QemuPower"
30+
Qemu = "jumpstarter_driver_qemu.driver:Qemu"
31+
32+
[project.entry-points."jumpstarter.clients"]
33+
QemuClient = "jumpstarter_driver_qemu.client:QemuClient"
3034

3135
[tool.hatch.metadata.hooks.vcs.urls]
3236
Homepage = "https://jumpstarter.dev"
3337
source_archive = "https://github.com/jumpstarter-dev/repo/archive/{commit_hash}.zip"
3438

3539
[tool.hatch.version]
3640
source = "vcs"
37-
raw-options = { 'root' = '../../'}
41+
raw-options = { 'root' = '../../' }
3842

3943
[tool.uv.sources]
4044
jumpstarter-driver-opendal = { workspace = true }

0 commit comments

Comments
 (0)