centralize shared hive config
This commit is contained in:
parent
f1b061887c
commit
ea54ea9eb6
4 changed files with 34 additions and 39 deletions
44
nixosModules/constellation-swarm.nix
Normal file
44
nixosModules/constellation-swarm.nix
Normal file
|
|
@ -0,0 +1,44 @@
|
|||
{
|
||||
hyperhive,
|
||||
lib,
|
||||
config,
|
||||
...
|
||||
}:
|
||||
let
|
||||
cfg = config.my.constellation-swarm;
|
||||
in
|
||||
{
|
||||
options.my.constellation-swarm = {
|
||||
enable = lib.mkEnableOption "hyperhive / constellation swarm";
|
||||
hive-name = lib.mkOption { type = lib.types.str; };
|
||||
};
|
||||
|
||||
imports = [ hyperhive.nixosModules.default ];
|
||||
|
||||
config.services.hyperhive = lib.mkIf cfg.enable {
|
||||
enable = true;
|
||||
swarmName = "constellation";
|
||||
ruthless = true;
|
||||
domain = "${cfg.hive-name}.darkest.space";
|
||||
hiveName = cfg.hive-name;
|
||||
matrix.enable = true;
|
||||
forge.ci.enable = true;
|
||||
gateway = {
|
||||
localHostsEntry = true;
|
||||
openFirewall = true;
|
||||
};
|
||||
swarm.peers = {
|
||||
"umbra.darkest.space" = {
|
||||
certFingerprint = "sha256:ae68d089e0155978fff7a9963bfb1e123ed645e7c9f93a4b4bb3e278c5f32a27";
|
||||
};
|
||||
"pr1ma.darkest.space" = {
|
||||
certFingerprint = "sha256:63e026f8682d6b5496f3eec99edb2ef62a8999c6d767228051e6e057f8cd90c6";
|
||||
};
|
||||
};
|
||||
otel = {
|
||||
enable = true;
|
||||
endpoint = "https://exponentials.vibec0re.mov/otel";
|
||||
headersCredential = "/etc/hyperhive/otel-cred";
|
||||
};
|
||||
};
|
||||
}
|
||||
Loading…
Reference in a new issue