hte-cli 0.2.5__py3-none-any.whl → 0.2.7__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
hte_cli/cli.py
CHANGED
|
@@ -311,19 +311,38 @@ def session_join(ctx, session_id: str, force_setup: bool):
|
|
|
311
311
|
continue
|
|
312
312
|
|
|
313
313
|
# Need to pull - show progress
|
|
314
|
+
last_status = ["connecting..."] # Use list for closure mutability
|
|
314
315
|
with console.status(f"[yellow]↓[/yellow] {short_name} [dim]connecting...[/dim]") as status:
|
|
315
316
|
def show_progress(image: str, line: str):
|
|
316
317
|
# Parse docker pull output for layer progress
|
|
317
318
|
# Lines look like: "abc123: Downloading [====> ] 10MB/50MB"
|
|
318
|
-
# Or: "
|
|
319
|
+
# Or: "abc123: Extracting [====> ] 10MB/50MB"
|
|
320
|
+
# Or: "abc123: Pull complete", "Digest: sha256:...", "Status: ..."
|
|
321
|
+
display_text = None
|
|
319
322
|
if ": " in line:
|
|
320
323
|
parts = line.split(": ", 1)
|
|
321
324
|
if len(parts) == 2:
|
|
322
|
-
|
|
323
|
-
|
|
325
|
+
layer_id = parts[0][-8:] # Last 8 chars of layer ID
|
|
326
|
+
layer_status = parts[1][:40]
|
|
327
|
+
# Show progress bars for Downloading/Extracting
|
|
328
|
+
if "Downloading" in layer_status or "Extracting" in layer_status:
|
|
329
|
+
display_text = f"{layer_id}: {layer_status}"
|
|
330
|
+
elif "Pull complete" in layer_status:
|
|
331
|
+
display_text = f"{layer_id}: done"
|
|
332
|
+
elif "Download complete" in layer_status:
|
|
333
|
+
display_text = f"{layer_id}: downloaded, extracting..."
|
|
334
|
+
elif "Already exists" in layer_status:
|
|
335
|
+
display_text = f"{layer_id}: cached"
|
|
336
|
+
elif "Waiting" in layer_status:
|
|
337
|
+
display_text = f"{layer_id}: waiting..."
|
|
338
|
+
else:
|
|
339
|
+
display_text = layer_status[:50]
|
|
324
340
|
elif line.strip():
|
|
325
|
-
|
|
326
|
-
|
|
341
|
+
display_text = line[:50]
|
|
342
|
+
|
|
343
|
+
if display_text and display_text != last_status[0]:
|
|
344
|
+
last_status[0] = display_text
|
|
345
|
+
status.update(f"[yellow]↓[/yellow] {short_name} [dim]{display_text}[/dim]")
|
|
327
346
|
|
|
328
347
|
success = pull_image_with_progress(img, on_progress=show_progress)
|
|
329
348
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
hte_cli/__init__.py,sha256=fDGXp-r8bIoLtlQnn5xJ_CpwMhonvk9bGjZQsjA2mDI,914
|
|
2
2
|
hte_cli/__main__.py,sha256=63n0gNGfskidWDU0aAIF2N8lylVCLYKVIkrN9QiORoo,107
|
|
3
3
|
hte_cli/api_client.py,sha256=m42kfFZS72Nu_VuDwxRsLNy4ziCcvgk7KNWBh9gwqy0,9257
|
|
4
|
-
hte_cli/cli.py,sha256=
|
|
4
|
+
hte_cli/cli.py,sha256=OBRo5QREEedf8CVzwvm7fecaoLc3jJPVbQgN805HjH0,42496
|
|
5
5
|
hte_cli/config.py,sha256=42Xv__YMSeRLs2zhGukJkIXFKtnBtYCHnONfViGyt2g,3387
|
|
6
6
|
hte_cli/errors.py,sha256=1J5PpxcUKBu6XjigMMCPOq4Zc12tnv8LhAsiaVFWLQM,2762
|
|
7
7
|
hte_cli/events.py,sha256=Zn-mroqaLHNzdT4DFf8st1Qclglshihdc09dBfCN070,5522
|
|
@@ -9,7 +9,7 @@ hte_cli/image_utils.py,sha256=454yoZEI1duNYrZC8UjhfZzDRP4Nxdrf2TvnZ_54G1k,4439
|
|
|
9
9
|
hte_cli/runner.py,sha256=DhC8FMjHwfLR193iP4thLDRZrNssYA9KH1WYKU2JKeg,13535
|
|
10
10
|
hte_cli/scorers.py,sha256=sFoPJePRt-K191-Ga4cVmrldruJclYXTOLkU_C9nCDI,6025
|
|
11
11
|
hte_cli/version_check.py,sha256=WVZyGy2XfAghQYdd2N9-0Qfg-7pgp9gt4761-PnmacI,1708
|
|
12
|
-
hte_cli-0.2.
|
|
13
|
-
hte_cli-0.2.
|
|
14
|
-
hte_cli-0.2.
|
|
15
|
-
hte_cli-0.2.
|
|
12
|
+
hte_cli-0.2.7.dist-info/METADATA,sha256=TZEGl2C0lrQoYqd5GonMmqbyD4T91Te1iKJArOikhZs,3767
|
|
13
|
+
hte_cli-0.2.7.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
|
|
14
|
+
hte_cli-0.2.7.dist-info/entry_points.txt,sha256=XbyEEi1H14DFAt0Kdl22e_IRVEGzimSzYSh5HlhKlFA,41
|
|
15
|
+
hte_cli-0.2.7.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|