feat(cache): add cache service

This commit is contained in:
zack 2024-10-19 14:32:35 -04:00
parent 5402760418
commit 2292d645bb
No known key found for this signature in database
GPG key ID: 5F873416BCF59F35
3 changed files with 37 additions and 12 deletions

37
modules/nixos/sites/cache/default.nix vendored Normal file
View file

@ -0,0 +1,37 @@
{
lib,
config,
pkgs,
...
}:
with lib;
with lib.custom; let
cfg = config.sites.cache;
sec = config.age.secrets;
in {
options.sites.hydra = with types; {
enable = mkBoolOpt false "Enable Hydra";
};
config = mkIf cfg.enable {
age.secrets = {
cache_key = {
file = ./sec/cache_key.age;
};
};
services.nix-serve = {
enable = true;
secretKeyFile = sec.cache_key.path;
};
services.nginx.virtualHosts."cache.zoeys.computer" = {
forceSSL = true;
enableACME = true;
locations."/" = {
proxyPass = "http://${config.services.nix-serve.bindAddress}:${toString config.services.nix-serve.port}";
};
};
};
}

View file

@ -15,23 +15,11 @@ in {
};
config = mkIf cfg.enable {
age.secrets = {
hydra_key = {
owner = "hydra";
group = "hydra";
file = ./sec/hydra_key.age;
};
};
services.hydra = {
enable = true;
hydraURL = "https://hydra.zoeys.computer";
useSubstitutes = true;
notificationSender = "hydra@localhost"; # e-mail of hydra service
extraConfig = ''
binary_cache_secret_key_file = ${sec.hydra_key.path}
'';
};
services.nginx.virtualHosts."hydra.zoeys.computer" = {