Classgen: add mapped keys and more stuff

This commit is contained in:
Johannes Kirschbauer
2024-07-18 19:18:58 +02:00
parent 7e84eaa4b3
commit 07965598f5
17 changed files with 178 additions and 321 deletions

View File

@@ -6,7 +6,7 @@ from pathlib import Path
from clan_cli.cmd import run_no_stdout
from clan_cli.errors import ClanCmdError, ClanError
from clan_cli.inventory import Inventory, Service
from clan_cli.inventory import Inventory, load_inventory
from clan_cli.nix import nix_eval
from . import API
@@ -150,24 +150,6 @@ def get_module_info(
)
@API.register
def update_module_instance(
base_path: str, module_name: str, instance_name: str, instance_config: Service
) -> Inventory:
inventory = Inventory.load_file(base_path)
module_instances = inventory.services.get(module_name, {})
module_instances[instance_name] = instance_config
inventory.services[module_name] = module_instances
inventory.persist(
base_path, f"Updated module instance {module_name}/{instance_name}"
)
return inventory
@API.register
def get_inventory(base_path: str) -> Inventory:
return Inventory.load_file(base_path)
return load_inventory(base_path)