dayhoff-tools 1.3.15__py3-none-any.whl → 1.3.16__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 +28 -6
- {dayhoff_tools-1.3.15.dist-info → dayhoff_tools-1.3.16.dist-info}/METADATA +1 -1
- {dayhoff_tools-1.3.15.dist-info → dayhoff_tools-1.3.16.dist-info}/RECORD +5 -5
- {dayhoff_tools-1.3.15.dist-info → dayhoff_tools-1.3.16.dist-info}/WHEEL +0 -0
- {dayhoff_tools-1.3.15.dist-info → dayhoff_tools-1.3.16.dist-info}/entry_points.txt +0 -0
@@ -388,6 +388,12 @@ def launch_engine(
|
|
388
388
|
help="Engine type: cpu, cpumax, t4, a10g, a100",
|
389
389
|
),
|
390
390
|
user: Optional[str] = typer.Option(None, "--user", "-u", help="Override username"),
|
391
|
+
boot_disk_size: Optional[int] = typer.Option(
|
392
|
+
None,
|
393
|
+
"--size",
|
394
|
+
"-s",
|
395
|
+
help="Boot disk size in GB (default: 50GB, min: 20GB, max: 1000GB)",
|
396
|
+
),
|
391
397
|
):
|
392
398
|
"""Launch a new engine instance."""
|
393
399
|
username = check_aws_sso()
|
@@ -401,9 +407,19 @@ def launch_engine(
|
|
401
407
|
console.print(f"Valid types: {', '.join(valid_types)}")
|
402
408
|
raise typer.Exit(1)
|
403
409
|
|
410
|
+
# Validate boot disk size
|
411
|
+
if boot_disk_size is not None:
|
412
|
+
if boot_disk_size < 20:
|
413
|
+
console.print("[red]❌ Boot disk size must be at least 20GB[/red]")
|
414
|
+
raise typer.Exit(1)
|
415
|
+
if boot_disk_size > 1000:
|
416
|
+
console.print("[red]❌ Boot disk size cannot exceed 1000GB[/red]")
|
417
|
+
raise typer.Exit(1)
|
418
|
+
|
404
419
|
cost = HOURLY_COSTS.get(engine_type, 0)
|
420
|
+
disk_info = f" with {boot_disk_size}GB boot disk" if boot_disk_size else ""
|
405
421
|
console.print(
|
406
|
-
f"Launching [cyan]{name}[/cyan] ({engine_type}) for ${cost:.2f}/hour..."
|
422
|
+
f"Launching [cyan]{name}[/cyan] ({engine_type}){disk_info} for ${cost:.2f}/hour..."
|
407
423
|
)
|
408
424
|
|
409
425
|
with Progress(
|
@@ -413,17 +429,23 @@ def launch_engine(
|
|
413
429
|
) as progress:
|
414
430
|
progress.add_task("Creating engine...", total=None)
|
415
431
|
|
416
|
-
|
417
|
-
"
|
418
|
-
"
|
419
|
-
|
420
|
-
|
432
|
+
request_data = {
|
433
|
+
"name": name,
|
434
|
+
"user": username,
|
435
|
+
"engine_type": engine_type,
|
436
|
+
}
|
437
|
+
if boot_disk_size is not None:
|
438
|
+
request_data["boot_disk_size"] = boot_disk_size
|
439
|
+
|
440
|
+
response = make_api_request("POST", "/engines", json_data=request_data)
|
421
441
|
|
422
442
|
if response.status_code == 201:
|
423
443
|
data = response.json()
|
424
444
|
console.print(f"[green]✓ Engine launched successfully![/green]")
|
425
445
|
console.print(f"Instance ID: [cyan]{data['instance_id']}[/cyan]")
|
426
446
|
console.print(f"Type: {data['instance_type']} (${cost:.2f}/hour)")
|
447
|
+
if boot_disk_size:
|
448
|
+
console.print(f"Boot disk: {boot_disk_size}GB")
|
427
449
|
console.print("\nThe engine is initializing. This may take a few minutes.")
|
428
450
|
console.print(f"Check status with: [cyan]dh engine status {name}[/cyan]")
|
429
451
|
else:
|
@@ -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=TX9IwHkpb-x3OvvydwwhsXqxCpXnZ9TCNiOvYXYGP94,70265
|
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.16.dist-info/METADATA,sha256=Ylw3uOqRFudCtgZdphUqKDLMBn0bH7O6-Ns8ZGTQ5R4,2825
|
31
|
+
dayhoff_tools-1.3.16.dist-info/WHEEL,sha256=b4K_helf-jlQoXBBETfwnf4B04YC67LOev0jo4fX5m8,88
|
32
|
+
dayhoff_tools-1.3.16.dist-info/entry_points.txt,sha256=iAf4jteNqW3cJm6CO6czLxjW3vxYKsyGLZ8WGmxamSc,49
|
33
|
+
dayhoff_tools-1.3.16.dist-info/RECORD,,
|
File without changes
|
File without changes
|