generated from Luis/nextjs-python-web-template
26 lines
611 B
Python
26 lines
611 B
Python
import argparse
|
|
import asyncio
|
|
|
|
from ..dirs import get_clan_flake_toplevel
|
|
from ..webui.routers import vms
|
|
from ..webui.schemas import VmConfig
|
|
|
|
|
|
def create(args: argparse.Namespace) -> None:
|
|
clan_dir = get_clan_flake_toplevel().as_posix()
|
|
vm = VmConfig(
|
|
flake_url=clan_dir,
|
|
flake_attr=args.machine,
|
|
cores=0,
|
|
graphics=False,
|
|
memory_size=0,
|
|
)
|
|
|
|
res = asyncio.run(vms.create_vm(vm))
|
|
print(res.json())
|
|
|
|
|
|
def register_create_parser(parser: argparse.ArgumentParser) -> None:
|
|
parser.add_argument("machine", type=str)
|
|
parser.set_defaults(func=create)
|