Unify public UX around pyro CLI and Pyro facade
This commit is contained in:
parent
d16aadd03f
commit
23a2dfb330
19 changed files with 936 additions and 407 deletions
|
|
@ -29,10 +29,11 @@ def test_create_server_registers_vm_tools(tmp_path: Path) -> None:
|
|||
assert "vm_exec" in tool_names
|
||||
assert "vm_list_profiles" in tool_names
|
||||
assert "vm_network_info" in tool_names
|
||||
assert "vm_run" in tool_names
|
||||
assert "vm_status" in tool_names
|
||||
|
||||
|
||||
def test_vm_tools_lifecycle_round_trip(tmp_path: Path) -> None:
|
||||
def test_vm_run_round_trip(tmp_path: Path) -> None:
|
||||
manager = VmManager(
|
||||
backend_name="mock",
|
||||
base_dir=tmp_path / "vms",
|
||||
|
|
@ -49,17 +50,17 @@ def test_vm_tools_lifecycle_round_trip(tmp_path: Path) -> None:
|
|||
|
||||
async def _run() -> dict[str, Any]:
|
||||
server = create_server(manager=manager)
|
||||
created = _extract_structured(
|
||||
await server.call_tool(
|
||||
"vm_create",
|
||||
{"profile": "debian-git", "vcpu_count": 1, "mem_mib": 512, "ttl_seconds": 600},
|
||||
)
|
||||
)
|
||||
vm_id = str(created["vm_id"])
|
||||
await server.call_tool("vm_start", {"vm_id": vm_id})
|
||||
executed = _extract_structured(
|
||||
await server.call_tool(
|
||||
"vm_exec", {"vm_id": vm_id, "command": "printf 'git version 2.0\\n'"}
|
||||
"vm_run",
|
||||
{
|
||||
"profile": "debian-git",
|
||||
"command": "printf 'git version 2.0\\n'",
|
||||
"vcpu_count": 1,
|
||||
"mem_mib": 512,
|
||||
"ttl_seconds": 600,
|
||||
"network": False,
|
||||
},
|
||||
)
|
||||
)
|
||||
return executed
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue