Merge pull request 'vars: generate proper commit messages' (#2142) from DavHau/clan-core:DavHau-dave into main
This commit is contained in:
@@ -88,6 +88,7 @@ def encrypt_secret(
|
|||||||
add_users: list[str] | None = None,
|
add_users: list[str] | None = None,
|
||||||
add_machines: list[str] | None = None,
|
add_machines: list[str] | None = None,
|
||||||
add_groups: list[str] | None = None,
|
add_groups: list[str] | None = None,
|
||||||
|
git_commit: bool = True,
|
||||||
) -> None:
|
) -> None:
|
||||||
if add_groups is None:
|
if add_groups is None:
|
||||||
add_groups = []
|
add_groups = []
|
||||||
@@ -145,10 +146,11 @@ def encrypt_secret(
|
|||||||
secret_path = secret_path / "secret"
|
secret_path = secret_path / "secret"
|
||||||
encrypt_file(secret_path, value, sorted(recipient_keys))
|
encrypt_file(secret_path, value, sorted(recipient_keys))
|
||||||
files_to_commit.append(secret_path)
|
files_to_commit.append(secret_path)
|
||||||
|
if git_commit:
|
||||||
commit_files(
|
commit_files(
|
||||||
files_to_commit,
|
files_to_commit,
|
||||||
flake_dir,
|
flake_dir,
|
||||||
f"Update secret {secret_path.name}",
|
f"Update secret {secret_path.parent.name}",
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -181,7 +181,7 @@ def execute_generator(
|
|||||||
commit_files(
|
commit_files(
|
||||||
files_to_commit,
|
files_to_commit,
|
||||||
machine.flake_dir,
|
machine.flake_dir,
|
||||||
f"Update facts/secrets for service {generator_name} in machine {machine.name}",
|
f"Update vars via generator {generator_name} for machine {machine.name}",
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -60,6 +60,7 @@ class SecretStore(SecretStoreBase):
|
|||||||
value,
|
value,
|
||||||
add_machines=[self.machine.name],
|
add_machines=[self.machine.name],
|
||||||
add_groups=self.machine.deployment["sops"]["defaultGroups"],
|
add_groups=self.machine.deployment["sops"]["defaultGroups"],
|
||||||
|
git_commit=False,
|
||||||
)
|
)
|
||||||
return path
|
return path
|
||||||
|
|
||||||
|
|||||||
@@ -535,3 +535,63 @@ def test_api_set_prompts(
|
|||||||
],
|
],
|
||||||
)
|
)
|
||||||
assert store.get("my_generator", "prompt1").decode() == "input2"
|
assert store.get("my_generator", "prompt1").decode() == "input2"
|
||||||
|
|
||||||
|
|
||||||
|
@pytest.mark.impure
|
||||||
|
def test_commit_message(
|
||||||
|
monkeypatch: pytest.MonkeyPatch,
|
||||||
|
temporary_home: Path,
|
||||||
|
) -> None:
|
||||||
|
config = nested_dict()
|
||||||
|
my_generator = config["clan"]["core"]["vars"]["generators"]["my_generator"]
|
||||||
|
my_generator["files"]["my_value"]["secret"] = False
|
||||||
|
my_generator["script"] = "echo hello > $out/my_value"
|
||||||
|
my_secret_generator = config["clan"]["core"]["vars"]["generators"][
|
||||||
|
"my_secret_generator"
|
||||||
|
]
|
||||||
|
my_secret_generator["files"]["my_secret"]["secret"] = True
|
||||||
|
my_secret_generator["script"] = "echo hello > $out/my_secret"
|
||||||
|
flake = generate_flake(
|
||||||
|
temporary_home,
|
||||||
|
flake_template=CLAN_CORE / "templates" / "minimal",
|
||||||
|
machine_configs={"my_machine": config},
|
||||||
|
monkeypatch=monkeypatch,
|
||||||
|
)
|
||||||
|
monkeypatch.chdir(flake.path)
|
||||||
|
cli.run(
|
||||||
|
[
|
||||||
|
"vars",
|
||||||
|
"generate",
|
||||||
|
"--flake",
|
||||||
|
str(flake.path),
|
||||||
|
"my_machine",
|
||||||
|
"--service",
|
||||||
|
"my_generator",
|
||||||
|
]
|
||||||
|
)
|
||||||
|
# get last commit message
|
||||||
|
commit_message = run(
|
||||||
|
["git", "log", "-1", "--pretty=%B"],
|
||||||
|
).stdout.strip()
|
||||||
|
assert (
|
||||||
|
commit_message
|
||||||
|
== "Update vars via generator my_generator for machine my_machine"
|
||||||
|
)
|
||||||
|
cli.run(
|
||||||
|
[
|
||||||
|
"vars",
|
||||||
|
"generate",
|
||||||
|
"--flake",
|
||||||
|
str(flake.path),
|
||||||
|
"my_machine",
|
||||||
|
"--service",
|
||||||
|
"my_secret_generator",
|
||||||
|
]
|
||||||
|
)
|
||||||
|
commit_message = run(
|
||||||
|
["git", "log", "-1", "--pretty=%B"],
|
||||||
|
).stdout.strip()
|
||||||
|
assert (
|
||||||
|
commit_message
|
||||||
|
== "Update vars via generator my_secret_generator for machine my_machine"
|
||||||
|
)
|
||||||
|
|||||||
Reference in New Issue
Block a user