33 lines
667 B
Nix
33 lines
667 B
Nix
{ config, lib, ... }:
|
|
|
|
let
|
|
cfg = config.services.consul;
|
|
in
|
|
|
|
{
|
|
hostLinks = lib.genAttrs cfg.nodes.agent (hostName: {
|
|
consul = {
|
|
ipv4 = config.vars.mesh.${hostName}.meshIp;
|
|
};
|
|
});
|
|
services.consul = {
|
|
nodes = {
|
|
agent = [ "checkmate" "grail" "thunderskin" "VEGAS" "prophet" ];
|
|
ready = config.services.consul.nodes.agent;
|
|
};
|
|
nixos = {
|
|
agent = [
|
|
./agent.nix
|
|
./remote-api.nix
|
|
];
|
|
ready = ./ready.nix;
|
|
};
|
|
simulacrum = {
|
|
enable = true;
|
|
deps = [ "wireguard" ];
|
|
settings = ./test.nix;
|
|
};
|
|
};
|
|
|
|
dns.records."consul-remote.internal".consulService = "consul-remote";
|
|
}
|