Merge hosts and deployments with a simpler and clearer hosts definition
This commit is contained in:
parent
f244d787be
commit
b6b2774414
4 changed files with 233 additions and 219 deletions
183
hosts/hosts.nix
Normal file
183
hosts/hosts.nix
Normal file
|
|
@ -0,0 +1,183 @@
|
|||
# Single source of truth for all host definitions
|
||||
# Each host specifies its module path, deployment tags, and optional flags
|
||||
{
|
||||
arr = {
|
||||
module = ./arr;
|
||||
tags = [
|
||||
"lxc"
|
||||
"bacco"
|
||||
"arr"
|
||||
];
|
||||
};
|
||||
|
||||
authentik = {
|
||||
module = ./authentik;
|
||||
unstable = true;
|
||||
tags = [
|
||||
"lxc"
|
||||
"bacco"
|
||||
"auth"
|
||||
];
|
||||
};
|
||||
|
||||
caddy = {
|
||||
module = ./caddy;
|
||||
tags = [
|
||||
"lxc"
|
||||
"bacco"
|
||||
"arr"
|
||||
"auth"
|
||||
"metrics"
|
||||
"nextcloud"
|
||||
"portainer"
|
||||
"vaultwarden"
|
||||
"immich"
|
||||
"firefly-iii"
|
||||
"paperless"
|
||||
];
|
||||
};
|
||||
|
||||
colmena = {
|
||||
module = ./colmena;
|
||||
tags = [
|
||||
"lxc"
|
||||
"bacco"
|
||||
"colmena"
|
||||
];
|
||||
};
|
||||
|
||||
dns01 = {
|
||||
module = ./dns/dns-01.nix;
|
||||
tags = [
|
||||
"lxc"
|
||||
"bacco"
|
||||
"dns"
|
||||
];
|
||||
};
|
||||
|
||||
dns02 = {
|
||||
module = ./dns/dns-02.nix;
|
||||
tags = [
|
||||
"lxc"
|
||||
"bacco"
|
||||
"dns"
|
||||
];
|
||||
};
|
||||
|
||||
firefly-iii = {
|
||||
module = ./firefly-iii;
|
||||
tags = [
|
||||
"lxc"
|
||||
"bacco"
|
||||
"firefly-iii"
|
||||
];
|
||||
};
|
||||
|
||||
forgejo = {
|
||||
module = ./forgejo;
|
||||
tags = [
|
||||
"lxc"
|
||||
"bacco"
|
||||
"forgejo"
|
||||
];
|
||||
};
|
||||
|
||||
immich = {
|
||||
module = ./immich;
|
||||
tags = [
|
||||
"lxc"
|
||||
"bacco"
|
||||
"immich"
|
||||
];
|
||||
};
|
||||
|
||||
metrics = {
|
||||
module = ./metrics;
|
||||
tags = [
|
||||
"lxc"
|
||||
"bacco"
|
||||
"metrics"
|
||||
];
|
||||
};
|
||||
|
||||
n8n = {
|
||||
module = ./n8n;
|
||||
tags = [
|
||||
"lxc"
|
||||
"bacco"
|
||||
"n8n"
|
||||
];
|
||||
};
|
||||
|
||||
nextcloud = {
|
||||
module = ./nextcloud;
|
||||
tags = [
|
||||
"lxc"
|
||||
"bacco"
|
||||
"nextcloud"
|
||||
];
|
||||
};
|
||||
|
||||
paperless = {
|
||||
module = ./paperless;
|
||||
unstable = true;
|
||||
tags = [
|
||||
"lxc"
|
||||
"bacco"
|
||||
"paperless"
|
||||
];
|
||||
};
|
||||
|
||||
plex = {
|
||||
module = ./plex;
|
||||
tags = [
|
||||
"lxc"
|
||||
"node"
|
||||
];
|
||||
};
|
||||
|
||||
portainer = {
|
||||
module = ./portainer;
|
||||
tags = [
|
||||
"lxc"
|
||||
"bacco"
|
||||
"portainer"
|
||||
];
|
||||
};
|
||||
|
||||
shadowsocks = {
|
||||
module = ./shadowsocks;
|
||||
tags = [
|
||||
"lxc"
|
||||
"bacco"
|
||||
"shadowsocks"
|
||||
];
|
||||
};
|
||||
|
||||
vaultwarden = {
|
||||
module = ./vaultwarden;
|
||||
tags = [
|
||||
"lxc"
|
||||
"bacco"
|
||||
"vaultwarden"
|
||||
];
|
||||
};
|
||||
|
||||
zigbee2mqtt = {
|
||||
module = ./zigbee2mqtt;
|
||||
unstable = true;
|
||||
tags = [
|
||||
"lxc"
|
||||
"bacco"
|
||||
"zigbee2mqtt"
|
||||
];
|
||||
};
|
||||
|
||||
# Special hosts (non-LXC or local deployment)
|
||||
# deadbeef = {
|
||||
# module = ./deadbeef;
|
||||
# type = "workstation"; # Not an LXC
|
||||
# localDeployment = true;
|
||||
# tags = [ "local" ];
|
||||
# };
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue