From 4f9c169b34f69c5cda866a4605d05c4bb09196ae Mon Sep 17 00:00:00 2001 From: sefidel Date: Sat, 10 Feb 2024 07:16:59 +0900 Subject: feat(modules): add hydra --- modules/services/hydra.nix | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 modules/services/hydra.nix (limited to 'modules') diff --git a/modules/services/hydra.nix b/modules/services/hydra.nix new file mode 100644 index 0000000..65f602c --- /dev/null +++ b/modules/services/hydra.nix @@ -0,0 +1,38 @@ +{ config, lib, pkgs, hydra, ... }: + +with lib; +let + cfg = config.modules.services.hydra; +in +{ + options.modules.services.hydra = { + enable = mkEnableOption "Whether to enable Hydra, a Nix-based continuous build system"; + baseURL = mkOption { + type = types.str; + example = "https://hydra.kusanari.network"; + description = "The base URL for the Hydra webserver instance"; + }; + }; + + config = mkIf cfg.enable { + services.hydra = { + enable = true; + + package = hydra.packages.x86_64-linux.hydra; + + hydraURL = cfg.baseURL; + dbi = "dbi:Pg:dbname=hydra;user=hydra;"; + useSubstitutes = true; + notificationSender = "hydra@kusanari.network"; + + listenHost = "localhost"; + port = 4004; + }; + + modules.persistence.directories = [ + "/var/lib/hydra" + ]; + + nix.settings.allowed-uris = [ "github:" "https://" "http://" ]; + }; +} -- cgit 1.4.1