dayhoff-tools 1.3.26__py3-none-any.whl → 1.3.28__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.
- dayhoff_tools/cli/engine_commands.py +25 -6
- {dayhoff_tools-1.3.26.dist-info → dayhoff_tools-1.3.28.dist-info}/METADATA +1 -1
- {dayhoff_tools-1.3.26.dist-info → dayhoff_tools-1.3.28.dist-info}/RECORD +5 -5
- {dayhoff_tools-1.3.26.dist-info → dayhoff_tools-1.3.28.dist-info}/WHEEL +0 -0
- {dayhoff_tools-1.3.26.dist-info → dayhoff_tools-1.3.28.dist-info}/entry_points.txt +0 -0
@@ -15,7 +15,7 @@ from botocore.exceptions import ClientError, NoCredentialsError
|
|
15
15
|
from rich import box
|
16
16
|
from rich.console import Console
|
17
17
|
from rich.panel import Panel
|
18
|
-
from rich.progress import Progress, SpinnerColumn, TextColumn
|
18
|
+
from rich.progress import Progress, SpinnerColumn, TextColumn, TimeElapsedColumn
|
19
19
|
from rich.prompt import Confirm, IntPrompt, Prompt
|
20
20
|
from rich.table import Table
|
21
21
|
import re
|
@@ -663,7 +663,7 @@ def engine_status(
|
|
663
663
|
|
664
664
|
# Coffee lock
|
665
665
|
if idle_detector.get("coffee_lock"):
|
666
|
-
status_lines.append(f" • [cyan]☕
|
666
|
+
status_lines.append(f" • [cyan]☕ Caffeinated for another {idle_detector['coffee_lock']}[/cyan]")
|
667
667
|
|
668
668
|
# SSH sessions
|
669
669
|
ssh_sessions = idle_detector.get("ssh_sessions", [])
|
@@ -675,7 +675,7 @@ def engine_status(
|
|
675
675
|
# IDE connections
|
676
676
|
ide_conn = idle_detector.get("ide_connections")
|
677
677
|
if ide_conn:
|
678
|
-
status_lines.append(f" • [magenta]🖥
|
678
|
+
status_lines.append(f" • [magenta]🖥 IDE connected ({ide_conn['connection_count']} connections)[/magenta]")
|
679
679
|
|
680
680
|
if attached_studios:
|
681
681
|
status_lines.append("")
|
@@ -1594,9 +1594,28 @@ def attach_studio(
|
|
1594
1594
|
raise typer.Exit(1)
|
1595
1595
|
console.print("[green]✓ Engine started[/green]")
|
1596
1596
|
console.print("Waiting for engine to be ready...")
|
1597
|
-
|
1598
|
-
|
1599
|
-
|
1597
|
+
# Wait until the engine is fully running & marked ready (max 5 min)
|
1598
|
+
console.print("Waiting for engine to be ready (this can take a couple of minutes)…")
|
1599
|
+
from rich.progress import Progress, SpinnerColumn, TimeElapsedColumn
|
1600
|
+
|
1601
|
+
with Progress(SpinnerColumn(), TimeElapsedColumn(), TextColumn("[progress.description]{task.description}"), transient=True) as prog:
|
1602
|
+
prog.add_task("Awaiting engine readiness…", total=None)
|
1603
|
+
max_attempts = 30 # 30 × 10 s ≈ 5 min
|
1604
|
+
for _ in range(max_attempts):
|
1605
|
+
time.sleep(10)
|
1606
|
+
|
1607
|
+
status_resp = make_api_request("GET", f"/engines/{engine['instance_id']}")
|
1608
|
+
if status_resp.status_code != 200:
|
1609
|
+
continue
|
1610
|
+
|
1611
|
+
detailed = status_resp.json().get("engine", {})
|
1612
|
+
state_ok = detailed.get("state", "").lower() == "running"
|
1613
|
+
ready_ok = detailed.get("ready") is True
|
1614
|
+
|
1615
|
+
if state_ok and ready_ok:
|
1616
|
+
break
|
1617
|
+
else:
|
1618
|
+
console.print("[yellow]Engine is still starting up. If attachment fails, wait a little longer and retry.[/yellow]")
|
1600
1619
|
else:
|
1601
1620
|
raise typer.Exit(1)
|
1602
1621
|
|
@@ -3,7 +3,7 @@ dayhoff_tools/chemistry/standardizer.py,sha256=uMn7VwHnx02nc404eO6fRuS4rsl4dvSPf
|
|
3
3
|
dayhoff_tools/chemistry/utils.py,sha256=jt-7JgF-GeeVC421acX-bobKbLU_X94KNOW24p_P-_M,2257
|
4
4
|
dayhoff_tools/cli/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
5
5
|
dayhoff_tools/cli/cloud_commands.py,sha256=33qcWLmq-FwEXMdL3F0OHm-5Stlh2r65CldyEZgQ1no,40904
|
6
|
-
dayhoff_tools/cli/engine_commands.py,sha256=
|
6
|
+
dayhoff_tools/cli/engine_commands.py,sha256=qnueTQBXrnNkEaPjICvNdFytDI-mO-RIc4REsGrFiiQ,81715
|
7
7
|
dayhoff_tools/cli/main.py,sha256=rgeEHD9lJ8SBCR34BTLb7gVInHUUdmEBNXAJnq5yEU4,4795
|
8
8
|
dayhoff_tools/cli/swarm_commands.py,sha256=5EyKj8yietvT5lfoz8Zx0iQvVaNgc3SJX1z2zQR6o6M,5614
|
9
9
|
dayhoff_tools/cli/utility_commands.py,sha256=qs8vH9TBFHsOPC3X8cU3qZigM3dDn-2Ytq4o_F2WubU,27874
|
@@ -27,7 +27,7 @@ dayhoff_tools/intake/uniprot.py,sha256=BZYJQF63OtPcBBnQ7_P9gulxzJtqyorgyuDiPeOJq
|
|
27
27
|
dayhoff_tools/logs.py,sha256=DKdeP0k0kliRcilwvX0mUB2eipO5BdWUeHwh-VnsICs,838
|
28
28
|
dayhoff_tools/sqlite.py,sha256=jV55ikF8VpTfeQqqlHSbY8OgfyfHj8zgHNpZjBLos_E,18672
|
29
29
|
dayhoff_tools/warehouse.py,sha256=8YbnQ--usrEgDQGfvpV4MrMji55A0rq2hZaOgFGh6ag,15896
|
30
|
-
dayhoff_tools-1.3.
|
31
|
-
dayhoff_tools-1.3.
|
32
|
-
dayhoff_tools-1.3.
|
33
|
-
dayhoff_tools-1.3.
|
30
|
+
dayhoff_tools-1.3.28.dist-info/METADATA,sha256=PKfyhnreJSp0BFCQDAQ_6_7GWk44e_xs0FszGQOwJv0,2825
|
31
|
+
dayhoff_tools-1.3.28.dist-info/WHEEL,sha256=b4K_helf-jlQoXBBETfwnf4B04YC67LOev0jo4fX5m8,88
|
32
|
+
dayhoff_tools-1.3.28.dist-info/entry_points.txt,sha256=iAf4jteNqW3cJm6CO6czLxjW3vxYKsyGLZ8WGmxamSc,49
|
33
|
+
dayhoff_tools-1.3.28.dist-info/RECORD,,
|
File without changes
|
File without changes
|