lib: add toEnvVar function
This commit is contained in:
parent
9dfb82a0cf
commit
b24eed9a86
3 changed files with 5 additions and 4 deletions
|
|
@ -1,7 +1,7 @@
|
||||||
{ pkgs, lib }:
|
{ pkgs, lib }:
|
||||||
let
|
let
|
||||||
inherit (builtins) isAttrs hasAttr;
|
inherit (builtins) isAttrs hasAttr;
|
||||||
inherit (lib) any concatMapStringsSep concatStringsSep mapAttrsToList;
|
inherit (lib) any concatMapStringsSep concatStringsSep;
|
||||||
in
|
in
|
||||||
rec {
|
rec {
|
||||||
# Replace secrets in a file.
|
# Replace secrets in a file.
|
||||||
|
|
@ -25,6 +25,7 @@ rec {
|
||||||
|
|
||||||
replaceSecretsFormatAdapter = format: format.generate;
|
replaceSecretsFormatAdapter = format: format.generate;
|
||||||
replaceSecretsGeneratorAdapter = generator: name: value: pkgs.writeText "generator " (generator value);
|
replaceSecretsGeneratorAdapter = generator: name: value: pkgs.writeText "generator " (generator value);
|
||||||
|
toEnvVar = replaceSecretsGeneratorAdapter (v: (lib.generators.toINIWithGlobalSection {} { globalSection = v; }));
|
||||||
|
|
||||||
template = file: newPath: replacements: replaceSecretsScript {
|
template = file: newPath: replacements: replaceSecretsScript {
|
||||||
inherit file replacements;
|
inherit file replacements;
|
||||||
|
|
|
||||||
|
|
@ -314,7 +314,7 @@ in
|
||||||
script = shblib.genConfigOutOfBandSystemd {
|
script = shblib.genConfigOutOfBandSystemd {
|
||||||
config = instance.settings.repository.secrets;
|
config = instance.settings.repository.secrets;
|
||||||
configLocation = "/run/secrets_restic/${serviceName}";
|
configLocation = "/run/secrets_restic/${serviceName}";
|
||||||
generator = name: v: pkgs.writeText "template" (generators.toINIWithGlobalSection {} { globalSection = v; });
|
generator = shblib.toEnvVar;
|
||||||
user = instance.request.user;
|
user = instance.request.user;
|
||||||
};
|
};
|
||||||
in
|
in
|
||||||
|
|
@ -340,7 +340,7 @@ in
|
||||||
RESTIC_REPOSITORY = instance.settings.repository.path;
|
RESTIC_REPOSITORY = instance.settings.repository.path;
|
||||||
};
|
};
|
||||||
resultPath = "/run/secrets_restic_env/${fullName name instance.settings.repository}";
|
resultPath = "/run/secrets_restic_env/${fullName name instance.settings.repository}";
|
||||||
generator = name: v: pkgs.writeText (fullName name instance.settings.repository) (generators.toINIWithGlobalSection {} { globalSection = v; });
|
generator = shblib.toEnvVar;
|
||||||
user = instance.request.user;
|
user = instance.request.user;
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
|
||||||
|
|
@ -195,7 +195,7 @@ in
|
||||||
SMTP_PASSWORD.source = cfg.smtp.password.result.path;
|
SMTP_PASSWORD.source = cfg.smtp.password.result.path;
|
||||||
};
|
};
|
||||||
resultPath = "${dataFolder}/vaultwarden.env";
|
resultPath = "${dataFolder}/vaultwarden.env";
|
||||||
generator = name: v: pkgs.writeText "template" (lib.generators.toINIWithGlobalSection {} { globalSection = v; });
|
generator = shblib.toEnvVar;
|
||||||
};
|
};
|
||||||
|
|
||||||
shb.nginx.vhosts = [
|
shb.nginx.vhosts = [
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue