Added state directory.

This commit is contained in:
Qubasa
2023-10-13 19:56:10 +02:00
parent 58b54bb9df
commit 2ad87785c0
10 changed files with 74 additions and 35 deletions

View File

@@ -1,18 +1,31 @@
import argparse
import logging
from typing import Dict
from ..async_cmd import CmdOut, run, runforcli
from ..nix import nix_shell
from .folders import machine_folder
log = logging.getLogger(__name__)
def create_machine(name: str) -> None:
async def create_machine(name: str) -> Dict[str, CmdOut]:
folder = machine_folder(name)
folder.mkdir(parents=True, exist_ok=True)
# create empty settings.json file inside the folder
with open(folder / "settings.json", "w") as f:
f.write("{}")
response = {}
out = await run(nix_shell(["git"], ["git", "add", str(folder)]))
response["git add"] = out
out = await run(nix_shell(["git"], ["git", "commit", "-m", f"Added machine {name}", str(folder)]))
response["git commit"] = out
return response
def create_command(args: argparse.Namespace) -> None:
create_machine(args.host)
runforcli(create_machine, args.host)
def register_create_parser(parser: argparse.ArgumentParser) -> None: