use machine.{secrets,public}_{vars,fact}_store everywhere

This commit is contained in:
Jörg Thalheim
2025-04-22 16:53:31 +02:00
parent fe6fd41a4d
commit 7392570859
12 changed files with 39 additions and 137 deletions

View File

@@ -1,21 +1,14 @@
import argparse
import importlib
import logging
from clan_cli.completions import add_dynamic_completer, complete_machines
from clan_cli.errors import ClanError
from clan_cli.machines.machines import Machine
from clan_cli.vars._types import StoreBase
log = logging.getLogger(__name__)
def fix_vars(machine: Machine, generator_name: None | str = None) -> None:
secret_vars_module = importlib.import_module(machine.secret_vars_module)
secret_vars_store: StoreBase = secret_vars_module.SecretStore(machine=machine)
public_vars_module = importlib.import_module(machine.public_vars_module)
public_vars_store: StoreBase = public_vars_module.FactStore(machine=machine)
generators = machine.vars_generators
if generator_name:
for generator in generators:
@@ -29,8 +22,8 @@ def fix_vars(machine: Machine, generator_name: None | str = None) -> None:
raise ClanError(err_msg)
for generator in generators:
public_vars_store.fix(generator=generator)
secret_vars_store.fix(generator=generator)
machine.public_vars_store.fix(generator=generator)
machine.secret_vars_store.fix(generator=generator)
def fix_command(args: argparse.Namespace) -> None: