115 lines
2.3 KiB
Nix
115 lines
2.3 KiB
Nix
{
|
|
|
|
description = "Deployment for skynet";
|
|
|
|
inputs = {
|
|
# gonna start off with a fairly modern base
|
|
nixpkgs.url = "nixpkgs/nixos-22.11";
|
|
|
|
# utility stuff
|
|
flake-utils.url = "github:numtide/flake-utils";
|
|
agenix.url = "github:ryantm/agenix";
|
|
# this is the last stable hash that works for 22.11
|
|
arion.url = "github:hercules-ci/arion/d1cc2b2a7dd0928ebd94a3f18336b5515e95c60c";
|
|
|
|
};
|
|
|
|
outputs = { self, nixpkgs, agenix, arion, ... }: {
|
|
# https://github.com/zhaofengli/colmena
|
|
colmena = {
|
|
meta = {
|
|
nixpkgs = import nixpkgs {
|
|
system = "x86_64-linux";
|
|
overlays = [];
|
|
};
|
|
};
|
|
|
|
# installed for each machine
|
|
defaults = {
|
|
imports = [
|
|
./machines/_base.nix
|
|
# for the secrets
|
|
agenix.nixosModule
|
|
];
|
|
};
|
|
|
|
/* TODO:
|
|
vm host
|
|
jarvis.skynet.ie
|
|
193.1.99.73
|
|
172.20.20.2
|
|
ports
|
|
22, 80
|
|
none
|
|
|
|
DNS
|
|
vendetta.skynet.ie
|
|
ns1.skynet.ie
|
|
193.1.99.120
|
|
172.20.20.3
|
|
Ports
|
|
22, 53 (UDP)
|
|
53 (UDP)
|
|
|
|
vigil.skynet.ie
|
|
ns2.skynet.ie
|
|
193.1.99.121
|
|
172.20.20.4
|
|
Ports
|
|
22, 53 (UDP)
|
|
53 (UDP)
|
|
|
|
Wireguard
|
|
ash.skynet.ie Ash is a robot spy from Alien https://en.wikipedia.org/wiki/Ash_(Alien) we need someone to get us into teh network
|
|
193.1.99.75
|
|
172.20.205.5
|
|
Ports
|
|
22, 51820 (UDP)
|
|
51820 (UDP)
|
|
|
|
Icecase
|
|
stream.skynet.ie
|
|
193.1.99.111
|
|
172.20.20.6
|
|
Ports
|
|
22, 80, 443, 8000
|
|
80, 443, 8000
|
|
|
|
Minecraft
|
|
minecraft.games.skynet.ie
|
|
193.1.99.112
|
|
172.20.20.7
|
|
Ports
|
|
22, 80, 443, 25564, 25565, 25575
|
|
80, 443, 25564, 25565, 25575
|
|
|
|
*/
|
|
|
|
# firewall machiene
|
|
agentjones = import ./machines/agentjones.nix;
|
|
|
|
# ns1
|
|
vendetta = import ./machines/vendetta.nix;
|
|
|
|
# ns1
|
|
vigil = import ./machines/vigil.nix;
|
|
|
|
# wireguard
|
|
#ash = import ./machines/ash.nix;
|
|
|
|
# icecast - ULFM
|
|
galatea = import ./machines/galatea.nix;
|
|
|
|
# Game host
|
|
optimus = {
|
|
imports = [
|
|
./machines/optimus.nix
|
|
# for the docker
|
|
arion.nixosModules.arion
|
|
];
|
|
};
|
|
|
|
};
|
|
};
|
|
|
|
}
|