vms/run/inspect: also make it more type-safe
nix will show proper error messages when it cannot find a flake.
This commit is contained in:
parent
31196e3d3c
commit
48d7d5f38c
|
@ -32,12 +32,20 @@ async def inspect_vm(flake_url: str | Path, flake_attr: str) -> VmConfig:
|
||||||
return VmConfig(flake_url=flake_url, flake_attr=flake_attr, **data)
|
return VmConfig(flake_url=flake_url, flake_attr=flake_attr, **data)
|
||||||
|
|
||||||
|
|
||||||
|
@dataclass
|
||||||
|
class InspectOptions:
|
||||||
|
machine: str
|
||||||
|
flake: Path
|
||||||
|
|
||||||
|
|
||||||
def inspect_command(args: argparse.Namespace) -> None:
|
def inspect_command(args: argparse.Namespace) -> None:
|
||||||
if args.flake is None:
|
inspect_options = InspectOptions(
|
||||||
flake = Path.cwd()
|
machine=args.machine,
|
||||||
else:
|
flake=args.flake or Path.cwd(),
|
||||||
flake = Path(args.flake)
|
)
|
||||||
res = asyncio.run(inspect_vm(flake_url=flake, flake_attr=args.machine))
|
res = asyncio.run(
|
||||||
|
inspect_vm(flake_url=inspect_options.flake, flake_attr=inspect_options.machine)
|
||||||
|
)
|
||||||
print("Cores:", res.cores)
|
print("Cores:", res.cores)
|
||||||
print("Memory size:", res.memory_size)
|
print("Memory size:", res.memory_size)
|
||||||
print("Graphics:", res.graphics)
|
print("Graphics:", res.graphics)
|
||||||
|
|
Loading…
Reference in New Issue
Block a user