fix clan vars for public vars

This commit is contained in:
Jörg Thalheim
2024-12-11 15:54:46 +01:00
parent e52e7ef3a0
commit 9ad4e4d041
2 changed files with 9 additions and 2 deletions

View File

@@ -85,7 +85,9 @@ class SecretStore(StoreBase):
self, key_dir: Path, generator: Generator, secret_name: str self, key_dir: Path, generator: Generator, secret_name: str
) -> bool: ) -> bool:
secret_path = self.secret_path(generator, secret_name) secret_path = self.secret_path(generator, secret_name)
return sops.SopsKey.load_dir(key_dir) in sops.get_recipients(secret_path) recipient = sops.SopsKey.load_dir(key_dir)
recipients = sops.get_recipients(secret_path)
return recipient in recipients
def secret_path(self, generator: Generator, secret_name: str) -> Path: def secret_path(self, generator: Generator, secret_name: str) -> Path:
return self.directory(generator, secret_name) return self.directory(generator, secret_name)
@@ -247,6 +249,8 @@ class SecretStore(StoreBase):
file_found = True file_found = True
else: else:
continue continue
if not file.secret:
continue
secret_path = self.secret_path(generator, file.name) secret_path = self.secret_path(generator, file.name)
update_keys( update_keys(

View File

@@ -177,7 +177,10 @@ def test_generate_secret_var_sops_with_default_group(
config["clan"]["core"]["sops"]["defaultGroups"] = ["my_group"] config["clan"]["core"]["sops"]["defaultGroups"] = ["my_group"]
my_generator = config["clan"]["core"]["vars"]["generators"]["my_generator"] my_generator = config["clan"]["core"]["vars"]["generators"]["my_generator"]
my_generator["files"]["my_secret"]["secret"] = True my_generator["files"]["my_secret"]["secret"] = True
my_generator["script"] = "echo hello > $out/my_secret" my_generator["files"]["my_public"]["secret"] = False
my_generator["script"] = (
"echo hello > $out/my_secret && echo hello > $out/my_public"
)
flake.refresh() flake.refresh()
monkeypatch.chdir(flake.path) monkeypatch.chdir(flake.path)
sops_setup.init() sops_setup.init()