summaryrefslogtreecommitdiff
path: root/modules/nixos/server/mixins/hercules.nix
diff options
context:
space:
mode:
Diffstat (limited to 'modules/nixos/server/mixins/hercules.nix')
-rw-r--r--modules/nixos/server/mixins/hercules.nix55
1 files changed, 0 insertions, 55 deletions
diff --git a/modules/nixos/server/mixins/hercules.nix b/modules/nixos/server/mixins/hercules.nix
deleted file mode 100644
index a04f9b1..0000000
--- a/modules/nixos/server/mixins/hercules.nix
+++ /dev/null
@@ -1,55 +0,0 @@
-{
- config,
- lib,
- unstable,
- secretsDir,
- ...
-}:
-let
- cfg = config.server.mixins.hercules-ci;
-in
-{
- options.server.mixins.hercules-ci = {
- enable = lib.mkEnableOption "Hercules CI mixin";
- manageSecrets = lib.mkEnableOption "automatic management of secrets" // {
- default = config.traits.secrets.enable;
- defaultText = lib.literalExpression "config.traits.secrets.enable";
- };
- };
-
- config = lib.mkIf cfg.enable (
- lib.mkMerge [
- {
- services.hercules-ci-agent = {
- enable = true;
- # we want newer features
- package = unstable.hercules-ci-agent;
- };
- }
-
- (
- let
- secretNames = [
- "binaryCaches"
- "clusterJoinToken"
- "secretsJson"
- ];
- in
- lib.mkIf cfg.manageSecrets {
- age.secrets = lib.genAttrs secretNames (file: {
- file = "${secretsDir}/${file}.age";
- mode = "400";
- owner = "hercules-ci-agent";
- group = "hercules-ci-agent";
- });
-
- services.hercules-ci-agent = {
- settings = lib.mapAttrs' (name: lib.nameValuePair (name + "Path")) (
- lib.genAttrs secretNames (name: config.age.secrets.${name}.path)
- );
- };
- }
- )
- ]
- );
-}