Merge derp
This commit is contained in:
commit
30864205c4
|
@ -1,3 +1,4 @@
|
|||
with import <stockholm/lib>;
|
||||
{ lib, config, pkgs, ... }:
|
||||
{
|
||||
imports = [
|
||||
|
@ -7,10 +8,6 @@
|
|||
networking.firewall.allowedTCPPorts = [ 80 8010 9989 ];
|
||||
krebs.ci.enable = true;
|
||||
krebs.ci.treeStableTimer = 1;
|
||||
krebs.ci.users.krebs.all = true;
|
||||
krebs.ci.users.lass.all = true;
|
||||
krebs.ci.users.makefu.all = true;
|
||||
krebs.ci.users.nin.all = true;
|
||||
krebs.ci.users.tv.all = true;
|
||||
krebs.ci.hosts = filter (getAttr "ci") (attrValues config.krebs.hosts);
|
||||
}
|
||||
|
||||
|
|
|
@ -1,3 +1,4 @@
|
|||
with import <stockholm/lib>;
|
||||
{ lib, config, pkgs, ... }:
|
||||
{
|
||||
imports = [
|
||||
|
@ -7,7 +8,5 @@
|
|||
networking.firewall.allowedTCPPorts = [ 80 8010 9989 ];
|
||||
krebs.ci.enable = true;
|
||||
krebs.ci.treeStableTimer = 120;
|
||||
krebs.ci.users.krebs.hosts = [
|
||||
config.networking.hostName
|
||||
];
|
||||
krebs.ci.hosts = [ config.krebs.build.host ];
|
||||
}
|
||||
|
|
|
@ -17,30 +17,12 @@ in
|
|||
default = 10;
|
||||
description = "how long to wait until we test changes (in minutes)";
|
||||
};
|
||||
users = mkOption {
|
||||
type = with types; attrsOf (submodule {
|
||||
options = {
|
||||
all = mkOption {
|
||||
type = bool;
|
||||
default = false;
|
||||
};
|
||||
hosts = mkOption {
|
||||
type = listOf str;
|
||||
default = [];
|
||||
};
|
||||
};
|
||||
});
|
||||
example = {
|
||||
lass.all = true;
|
||||
krebs = {
|
||||
all = true;
|
||||
hosts = [
|
||||
"test-all-krebs-modules"
|
||||
"test-arch"
|
||||
];
|
||||
};
|
||||
};
|
||||
default = {};
|
||||
hosts = mkOption {
|
||||
type = types.listOf types.host;
|
||||
default = [];
|
||||
description = ''
|
||||
List of hosts that should be build
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
|
@ -132,23 +114,9 @@ in
|
|||
timeout=90001
|
||||
)
|
||||
|
||||
${let
|
||||
user-hosts = mapAttrs (user: a: let
|
||||
managed-hosts = attrNames (filterAttrs (_: h: (h.owner.name == user) && h.managed) config.krebs.hosts);
|
||||
defined-hosts = a.hosts;
|
||||
in
|
||||
defined-hosts ++ (optionals a.all managed-hosts)
|
||||
) cfg.users;
|
||||
|
||||
in
|
||||
concatStringsSep "\n" (
|
||||
(mapAttrsToList (user: hosts:
|
||||
concatMapStringsSep "\n" (host:
|
||||
"build_host(\"${user}\", \"${host}\")"
|
||||
) hosts
|
||||
) user-hosts)
|
||||
)
|
||||
}
|
||||
${concatMapStringsSep "\n" (host:
|
||||
"build_host(\"${host.owner.name}\", \"${host.name}\")"
|
||||
) cfg.hosts}
|
||||
|
||||
bu.append(
|
||||
util.BuilderConfig(
|
||||
|
|
|
@ -31,8 +31,8 @@ let
|
|||
in {
|
||||
hosts = {
|
||||
hope = {
|
||||
ci = true;
|
||||
owner = config.krebs.users.krebs;
|
||||
managed = true;
|
||||
nets = {
|
||||
internet = {
|
||||
ip4.addr = "45.62.225.18";
|
||||
|
@ -63,8 +63,8 @@ in {
|
|||
ssh.pubkey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOdLHRI29xJj1jmfSidE2Dh7EsDNszm+WH3Kj4zYBkP/";
|
||||
};
|
||||
hotdog = {
|
||||
ci = true;
|
||||
owner = config.krebs.users.krebs;
|
||||
managed = true;
|
||||
nets = {
|
||||
retiolum = {
|
||||
ip4.addr = "10.243.77.3";
|
||||
|
@ -90,8 +90,8 @@ in {
|
|||
ssh.pubkey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAICxFkBln23wUxt4RhIHE3GvdKeBpJbjn++6maupHqUHp";
|
||||
};
|
||||
puyak = {
|
||||
ci = true;
|
||||
owner = config.krebs.users.krebs;
|
||||
managed = true;
|
||||
nets = {
|
||||
retiolum = {
|
||||
ip4.addr = "10.243.77.2";
|
||||
|
@ -117,8 +117,8 @@ in {
|
|||
ssh.pubkey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIPpVwKv9mQGfcn5oFwuitq+b6Dz4jBG9sGhVoCYFw5RY";
|
||||
};
|
||||
wolf = {
|
||||
ci = true;
|
||||
owner = config.krebs.users.krebs;
|
||||
managed = true;
|
||||
nets = {
|
||||
shack = {
|
||||
ip4.addr = "10.42.2.150" ;
|
||||
|
|
|
@ -5,7 +5,7 @@ with import <stockholm/lib>;
|
|||
{
|
||||
hosts = mapAttrs (_: recursiveUpdate {
|
||||
owner = config.krebs.users.lass;
|
||||
managed = true;
|
||||
ci = true;
|
||||
}) {
|
||||
dishfire = {
|
||||
cores = 4;
|
||||
|
@ -117,6 +117,8 @@ with import <stockholm/lib>;
|
|||
ssh.pubkey = "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQChm4sqQ2bUZj+2YnTf6G5HHRTpSe1jTUhJRnwcYPYZKF+CBqBncipRpuGlGXEsptNa+7ZMcQC0ySsz5SUOMt3Ih+NehVe/qt3VtRz0l0MgOWmH2qBwKK9Y4IuxrJQzUmP4UGlOGlFj9DORssSMOyFIG4eZ9k2qMn3xal0NVRfGTShKlouWsiUILZ8I+sDNE00z8DAYesgc1yazvRnjzvLkRxdNdpYiAFBbmXMpPKK95McRJaWsuNSeal9kd5p5PagWcgN4DZ6+ebzz3NKnmzk4j+vuHX0U9lTXBqKMlzzmM2YNLRtDPfrtJNyHqLpZUpFhJKqZCD+4/0zdrzRfC7Th+5czzUCSvHiKPVsqw5eOdiQX6EyzNAF5zpkpRp//QdUNNXC5/Ku6GKCO491+TuA8VCha0fOwBONccTLUI/hGNmCh88mLbukVoeGJrbYNCOA/6kEz7ZLEveU4i+TT7okhDElMsNk+AWCZ8/NdJQNX3/K6+JJ9qAn+/yC8LdjgYYJ2oU/aw5/HyOgiQ0z4n9UfQ7j+nHysY9CQb1b3guX7yjJoc3KpNXCXEztuIRHjFD1EP8NRTSmGjsa/VjLmTLSsqjD+7IE5mT0tO5RJvmagDgdJSr/iR5D9zjW7hx7ttvektrlp9g0v3CiCFVaW4l95hGYT0HaNBLJ5R0YHm0lD+Q==";
|
||||
};
|
||||
domsen-nas = {
|
||||
ci = false;
|
||||
external = true;
|
||||
nets = rec {
|
||||
internet = {
|
||||
aliases = [
|
||||
|
@ -126,7 +128,6 @@ with import <stockholm/lib>;
|
|||
ssh.port = 2223;
|
||||
};
|
||||
};
|
||||
managed = false;
|
||||
};
|
||||
uriel = {
|
||||
cores = 1;
|
||||
|
@ -295,10 +296,12 @@ with import <stockholm/lib>;
|
|||
ssh.pubkey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIEB/MmASvx3i09DY1xFVM5jOhZRZA8rMRqtf8bCIkC+t";
|
||||
};
|
||||
iso = {
|
||||
ci = false;
|
||||
cores = 1;
|
||||
managed = false;
|
||||
};
|
||||
sokrateslaptop = {
|
||||
ci = false;
|
||||
external = true;
|
||||
nets = {
|
||||
retiolum = {
|
||||
ip4.addr = "10.243.142.104";
|
||||
|
@ -318,7 +321,6 @@ with import <stockholm/lib>;
|
|||
'';
|
||||
};
|
||||
};
|
||||
managed = false;
|
||||
};
|
||||
};
|
||||
users = {
|
||||
|
|
|
@ -5,8 +5,8 @@ with import <stockholm/lib>;
|
|||
{
|
||||
hosts = mapAttrs (_: setAttr "owner" config.krebs.users.makefu) {
|
||||
drop = rec {
|
||||
ci = true;
|
||||
cores = 1;
|
||||
managed = true;
|
||||
nets = {
|
||||
retiolum = {
|
||||
ip4.addr = "10.243.177.9";
|
||||
|
@ -28,8 +28,8 @@ with import <stockholm/lib>;
|
|||
};
|
||||
};
|
||||
studio = rec {
|
||||
ci = true;
|
||||
cores = 4;
|
||||
managed = true;
|
||||
ssh.privkey.path = <secrets/ssh_host_ed25519_key>;
|
||||
ssh.pubkey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIIqBR5gjJkR1TEIs2yx6JRoIOA7+/LJA6kjju8yCauFa studio";
|
||||
nets = {
|
||||
|
@ -54,8 +54,8 @@ with import <stockholm/lib>;
|
|||
};
|
||||
|
||||
fileleech = rec {
|
||||
ci = true;
|
||||
cores = 4;
|
||||
managed = true;
|
||||
ssh.privkey.path = <secrets/ssh_host_ed25519_key>;
|
||||
ssh.pubkey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIM+jB5QdPsAJc90alYDhAEP3sPDJb6eIj9bebj+rTBEJ fileleech";
|
||||
nets = {
|
||||
|
@ -80,8 +80,8 @@ with import <stockholm/lib>;
|
|||
};
|
||||
|
||||
pnp = {
|
||||
ci = true;
|
||||
cores = 1;
|
||||
managed = true;
|
||||
nets = {
|
||||
retiolum = {
|
||||
ip4.addr = "10.243.0.210";
|
||||
|
@ -104,8 +104,8 @@ with import <stockholm/lib>;
|
|||
};
|
||||
};
|
||||
darth = {
|
||||
ci = true;
|
||||
cores = 4;
|
||||
managed = true;
|
||||
nets = {
|
||||
retiolum = {
|
||||
ip4.addr = "10.243.0.84";
|
||||
|
@ -176,7 +176,7 @@ with import <stockholm/lib>;
|
|||
};
|
||||
};
|
||||
tsp = {
|
||||
managed = true;
|
||||
ci = true;
|
||||
cores = 1;
|
||||
nets = {
|
||||
retiolum = {
|
||||
|
@ -204,7 +204,7 @@ with import <stockholm/lib>;
|
|||
};
|
||||
};
|
||||
x = {
|
||||
managed = true;
|
||||
ci = true;
|
||||
cores = 4;
|
||||
nets = {
|
||||
retiolum = {
|
||||
|
@ -249,8 +249,8 @@ with import <stockholm/lib>;
|
|||
};
|
||||
|
||||
vbob = {
|
||||
ci = true;
|
||||
cores = 2;
|
||||
managed = true;
|
||||
nets = {
|
||||
retiolum = {
|
||||
ip4.addr = "10.243.1.91";
|
||||
|
@ -312,8 +312,8 @@ with import <stockholm/lib>;
|
|||
};
|
||||
};
|
||||
wry = rec {
|
||||
ci = true;
|
||||
cores = 1;
|
||||
managed = true;
|
||||
extraZones = {
|
||||
"krebsco.de" = ''
|
||||
wry IN A ${nets.internet.ip4.addr}
|
||||
|
@ -357,8 +357,8 @@ with import <stockholm/lib>;
|
|||
ssh.pubkey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIH4Tjx9qK6uWtxT1HCpeC0XvDZKO/kaPygyKatpAqU6I root@wry";
|
||||
};
|
||||
filepimp = rec {
|
||||
ci = true;
|
||||
cores = 1;
|
||||
managed = true;
|
||||
nets = {
|
||||
lan = {
|
||||
ip4.addr = "192.168.1.12";
|
||||
|
@ -387,8 +387,8 @@ with import <stockholm/lib>;
|
|||
};
|
||||
|
||||
omo = rec {
|
||||
ci = true;
|
||||
cores = 2;
|
||||
managed = true;
|
||||
|
||||
nets = {
|
||||
lan = {
|
||||
|
@ -421,8 +421,8 @@ with import <stockholm/lib>;
|
|||
ssh.pubkey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIPTBGboU/P00yYiwYje53G0oqDFWmcSJ+hIpMsl4f/HH";
|
||||
};
|
||||
wbob = rec {
|
||||
ci = true;
|
||||
cores = 4;
|
||||
managed = true;
|
||||
nets = {
|
||||
siem = {
|
||||
ip4.addr = "10.8.10.7";
|
||||
|
@ -463,8 +463,8 @@ with import <stockholm/lib>;
|
|||
};
|
||||
|
||||
gum = rec {
|
||||
ci = true;
|
||||
cores = 2;
|
||||
managed = true;
|
||||
|
||||
extraZones = {
|
||||
"krebsco.de" = ''
|
||||
|
@ -526,8 +526,8 @@ with import <stockholm/lib>;
|
|||
ssh.pubkey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIIcxWFEPzke/Sdd9qNX6rSJgXal8NmINYajpFCxXfYdj root@gum";
|
||||
};
|
||||
shoney = rec {
|
||||
ci = true;
|
||||
cores = 1;
|
||||
managed = true;
|
||||
nets = rec {
|
||||
siem = {
|
||||
via = internet;
|
||||
|
@ -575,8 +575,8 @@ with import <stockholm/lib>;
|
|||
};
|
||||
};
|
||||
sdev = rec {
|
||||
ci = true;
|
||||
cores = 1;
|
||||
managed = true;
|
||||
ssh.privkey.path = <secrets/ssh_host_ed25519_key>;
|
||||
ssh.pubkey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAILtm6ETzNgLcXNkrKs2VUEiGsTKBmOFpW2fazbzdUfOg sdev";
|
||||
nets = {
|
||||
|
|
|
@ -5,6 +5,7 @@ with import <stockholm/lib>;
|
|||
{
|
||||
hosts = mapAttrs (_: setAttr "owner" config.krebs.users.mv) {
|
||||
stro = {
|
||||
ci = true;
|
||||
cores = 4;
|
||||
nets = {
|
||||
retiolum = {
|
||||
|
|
|
@ -8,8 +8,8 @@ with import <stockholm/lib>;
|
|||
};
|
||||
hosts = mapAttrs (_: setAttr "owner" config.krebs.users.tv) {
|
||||
alnus = {
|
||||
ci = true;
|
||||
cores = 2;
|
||||
managed = true;
|
||||
nets = {
|
||||
retiolum = {
|
||||
ip4.addr = "10.243.21.1";
|
||||
|
@ -33,6 +33,7 @@ with import <stockholm/lib>;
|
|||
ssh.pubkey = "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDP9JS2Nyjx4Pn+/4MrFi1EvBBYVKkGm2Q4lhgaAiSuiGLol53OSsL2KIo01mbcSSBWow9QpQpn8KDoRnT2aMLDrdTFqL20ztDLOXmtrSsz3flgCjmW4f6uOaoZF0RNjAybd1coqwSJ7EINugwoqOsg1zzN2qeIGKYFvqFIKibYFAnQ8hcksmkvPdIO5O8CbdIiP9sZSrSDp0ZyLK2T0PML2jensVZOeqSPulQDFqLsbmavpVLkpDjdzzPRwbZWNB4++YeipbYNOkX4GR1EB4wMZ93IbBV7kpJtib2Zb2AnUf7UW37hxWBjILdstj9ClwNOQggn8kD9ub7YxBzH1dz0Xd8a0mPOAWIDJz9MypXgFRc3vdvPB/W1I4Se0CLbgOkORun9CkgijKr9oEY8JNt8HFd6viZcAaQxOyIm6PNHZTnHfdSc7bIBS2n3e3IZBv0fTd77knGLXg402aTuu2bm/kxsKivxsILXIaGbeXe4ceN3Fynr3FzSM2bUkzHb0mAHu1BQ9YaX0xzCwjVueA5nzGls7ODSFkXsiBfg2FvMN/sTLFca6tnwyqcnD6nujoiS5+BxjDWPgnZYqCaW3B/IkpTsRMsX6QrfhOFcsP8qlJ2Cp82orWoDK/D0vZ9pdzAc6PFGga0RofuJKY2yiq+SRZ7/e9E6VncIVCYZ1OfN0Q==";
|
||||
};
|
||||
cd = {
|
||||
ci = true;
|
||||
cores = 2;
|
||||
extraZones = {
|
||||
# TODO generate krebsco.de zone from nets and don't use extraZones at all
|
||||
|
@ -40,7 +41,6 @@ with import <stockholm/lib>;
|
|||
cd 60 IN A ${config.krebs.hosts.cd.nets.internet.ip4.addr}
|
||||
'';
|
||||
};
|
||||
managed = true;
|
||||
nets = {
|
||||
internet = {
|
||||
ip4.addr = "45.62.237.203";
|
||||
|
@ -79,6 +79,7 @@ with import <stockholm/lib>;
|
|||
ssh.pubkey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOd/HqZIO9Trn3eycl23GZAz21HQCISaVNfNyaLSQvJ6";
|
||||
};
|
||||
ju = {
|
||||
external = true;
|
||||
nets = {
|
||||
gg23 = {
|
||||
ip4.addr = "10.23.1.144";
|
||||
|
@ -112,6 +113,7 @@ with import <stockholm/lib>;
|
|||
ssh.pubkey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIHM6dL0fQ8Bd0hER0Xa3I2pAWVHdnwOBaAZhbDlLJmUu";
|
||||
};
|
||||
kaepsele = {
|
||||
external = true;
|
||||
nets = {
|
||||
retiolum = {
|
||||
ip4.addr = "10.243.166.2";
|
||||
|
@ -135,8 +137,8 @@ with import <stockholm/lib>;
|
|||
ssh.pubkey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIC5Wr36T0MmB8pnSO5/pw9/Dfe5+IMgVHOhm6EUa55jj";
|
||||
};
|
||||
mu = {
|
||||
ci = true;
|
||||
cores = 2;
|
||||
managed = true;
|
||||
nets = {
|
||||
retiolum = {
|
||||
ip4.addr = "10.243.20.1";
|
||||
|
@ -205,8 +207,8 @@ with import <stockholm/lib>;
|
|||
ssh.pubkey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAILGDdcKwFm6udU0/x6XGGb87k9py0VlrxF54HeYu9Izb";
|
||||
};
|
||||
nomic = {
|
||||
ci = true;
|
||||
cores = 2;
|
||||
managed = true;
|
||||
nets = {
|
||||
gg23 = {
|
||||
ip4.addr = "10.23.1.110";
|
||||
|
@ -237,6 +239,7 @@ with import <stockholm/lib>;
|
|||
ssh.pubkey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIMIHmwXHV7E9UGuk4voVCADjlLkyygqNw054jvrsPn5t root@nomic";
|
||||
};
|
||||
ok = {
|
||||
external = true;
|
||||
nets = {
|
||||
gg23 = {
|
||||
ip4.addr = "10.23.1.1";
|
||||
|
@ -245,6 +248,7 @@ with import <stockholm/lib>;
|
|||
};
|
||||
};
|
||||
schnabeldrucker = {
|
||||
external = true;
|
||||
nets = {
|
||||
gg23 = {
|
||||
ip4.addr = "10.23.1.21";
|
||||
|
@ -253,6 +257,7 @@ with import <stockholm/lib>;
|
|||
};
|
||||
};
|
||||
schnabelscanner = {
|
||||
external = true;
|
||||
nets = {
|
||||
gg23 = {
|
||||
ip4.addr = "10.23.1.22";
|
||||
|
@ -261,8 +266,8 @@ with import <stockholm/lib>;
|
|||
};
|
||||
};
|
||||
wu = {
|
||||
ci = true;
|
||||
cores = 4;
|
||||
managed = true;
|
||||
nets = {
|
||||
gg23 = {
|
||||
ip4.addr = "10.23.1.37";
|
||||
|
@ -299,8 +304,8 @@ with import <stockholm/lib>;
|
|||
binary-cache = {
|
||||
pubkey = "xu-1:pYRENvaxZqGeImwLA9qHmRwHV4jfKaYx4u1VcZ31x0s=";
|
||||
};
|
||||
ci = true;
|
||||
cores = 4;
|
||||
managed = true;
|
||||
nets = {
|
||||
gg23 = {
|
||||
ip4.addr = "10.23.1.38";
|
||||
|
@ -335,8 +340,8 @@ with import <stockholm/lib>;
|
|||
ssh.pubkey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIPnjfceKuHNQu7S4eYFN1FqgzMqiL7haNZMh2ZLhvuhK root@xu";
|
||||
};
|
||||
zu = {
|
||||
ci = true;
|
||||
cores = 4;
|
||||
managed = true;
|
||||
nets = {
|
||||
gg23 = {
|
||||
ip4.addr = "10.23.1.39";
|
||||
|
|
|
@ -6,7 +6,7 @@ with import <stockholm/lib>;
|
|||
options.lass.hosts = mkOption {
|
||||
type = types.attrsOf types.host;
|
||||
default =
|
||||
filterAttrs (_: host: host.owner.name == "lass" && host.managed)
|
||||
filterAttrs (_: host: host.owner.name == "lass" && host.ci)
|
||||
config.krebs.hosts;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -19,6 +19,6 @@ in
|
|||
# 87a4615 & 334ac4f
|
||||
# + acme permissions for groups
|
||||
# fd7a8f1
|
||||
ref = "60dc02d";
|
||||
ref = "fe46ffc";
|
||||
};
|
||||
}
|
||||
|
|
|
@ -31,9 +31,20 @@ rec {
|
|||
default = null;
|
||||
};
|
||||
|
||||
managed = mkOption {
|
||||
ci = mkOption {
|
||||
description = ''
|
||||
If true, then the host's configuration is defined in stockholm.
|
||||
If true, then the host wants to be tested by some CI system.
|
||||
See <stockholm/krebs/2configs/buildbot-all.nix>
|
||||
'';
|
||||
type = bool;
|
||||
default = false;
|
||||
};
|
||||
|
||||
external = mkOption {
|
||||
description = ''
|
||||
Whether the host is defined externally (in contrast to being defined
|
||||
in <stockholm>). This is useful e.g. when legacy and/or adopted
|
||||
hosts should be part of retiolum or some other component.
|
||||
'';
|
||||
type = bool;
|
||||
default = false;
|
||||
|
|
Loading…
Reference in a new issue