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

Commit 3e140e0

Browse files
kirkbrauerNickCao
authored andcommitted
Fix broken jmp admin get leases command with updated CRDs
1 parent 896627f commit 3e140e0

File tree

2 files changed

+10
-5
lines changed
  • packages
    • jumpstarter-cli-admin/jumpstarter_cli_admin
    • jumpstarter-kubernetes/jumpstarter_kubernetes

2 files changed

+10
-5
lines changed

packages/jumpstarter-cli-admin/jumpstarter_cli_admin/print.py

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -131,12 +131,14 @@ def get_reason(lease: V1Alpha1Lease):
131131
return "Expired"
132132
else:
133133
return "Complete"
134+
else:
135+
return reason
134136

135137

136138
def make_lease_row(lease: V1Alpha1Lease):
137139
selectors = []
138-
for label in lease.spec.selector:
139-
selectors.append(f"{label}:{str(lease.spec.selector[label])}")
140+
for label in lease.spec.selector.match_labels:
141+
selectors.append(f"{label}:{str(lease.spec.selector.match_labels[label])}")
140142
return {
141143
"NAME": lease.metadata.name,
142144
"CLIENT": lease.spec.client.name if lease.spec.client is not None else "",

packages/jumpstarter-kubernetes/jumpstarter_kubernetes/leases.py

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,10 +17,14 @@ class V1Alpha1LeaseStatus(JsonBaseModel):
1717
exporter: Optional[SerializeV1ObjectReference]
1818

1919

20+
class V1Alpha1LeaseSelector(JsonBaseModel):
21+
match_labels: dict[str, str] = Field(alias="matchLabels")
22+
23+
2024
class V1Alpha1LeaseSpec(JsonBaseModel):
2125
client: SerializeV1ObjectReference
2226
duration: Optional[str]
23-
selector: dict[str, str]
27+
selector: V1Alpha1LeaseSelector
2428

2529

2630
class V1Alpha1Lease(JsonBaseModel):
@@ -38,7 +42,6 @@ def from_dict(dict: dict):
3842
metadata=V1ObjectMeta(
3943
creation_timestamp=dict["metadata"]["creationTimestamp"],
4044
generation=dict["metadata"]["generation"],
41-
labels=dict["metadata"]["labels"],
4245
managed_fields=dict["metadata"]["managedFields"],
4346
name=dict["metadata"]["name"],
4447
namespace=dict["metadata"]["namespace"],
@@ -69,7 +72,7 @@ def from_dict(dict: dict):
6972
if "clientRef" in dict["spec"]
7073
else None,
7174
duration=dict["spec"]["duration"] if "duration" in dict["spec"] else None,
72-
selector=dict["spec"]["selector"],
75+
selector=V1Alpha1LeaseSelector(match_labels=dict["spec"]["selector"]["matchLabels"]),
7376
),
7477
)
7578

0 commit comments

Comments
 (0)