2024-01-10 13:59:11 +01:00
|
|
|
{ config, pkgs, ... }:
|
|
|
|
|
|
|
|
let
|
|
|
|
url = "https://git.dgnum.eu";
|
|
|
|
|
|
|
|
mkRunner = { labels, name, token }: {
|
|
|
|
enable = true;
|
|
|
|
|
|
|
|
inherit name labels token url;
|
|
|
|
|
|
|
|
settings.container = {
|
|
|
|
network = "host";
|
|
|
|
options = "--cpus=4";
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
in {
|
|
|
|
services.forgejo-nix-runners = {
|
|
|
|
enable = true;
|
|
|
|
|
|
|
|
inherit url;
|
|
|
|
|
|
|
|
storePath = "/data/slow/nix";
|
|
|
|
tokenFile = config.age.secrets."forgejo_runners-token_file".path;
|
|
|
|
|
|
|
|
dependencies = [ pkgs.colmena pkgs.npins pkgs.tea ];
|
|
|
|
|
|
|
|
containerOptions = [ "--cpus=4" ];
|
2024-01-12 11:01:41 +01:00
|
|
|
|
|
|
|
nbRunners = 6;
|
2024-01-10 13:59:11 +01:00
|
|
|
};
|
|
|
|
|
|
|
|
services.gitea-actions-runner.instances = builtins.mapAttrs (_: mkRunner) {
|
|
|
|
runner01 = {
|
|
|
|
token = "qT9nZXKgLcb3fWOj7VTj3S58raiCWwF0weuIIKlY";
|
|
|
|
name = "storage01 [debian]";
|
|
|
|
|
|
|
|
labels = [ "debian-latest:docker://node:20-bookworm" ];
|
|
|
|
};
|
|
|
|
|
|
|
|
runner02 = {
|
|
|
|
token = "m0rUDBxxkMb6xLTmPFwIieHswJFROqPFByPlT3V9";
|
|
|
|
name = "storage01 [debian]";
|
|
|
|
|
|
|
|
labels = [ "debian-latest:docker://node:20-bookworm" ];
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
virtualisation = {
|
|
|
|
podman = {
|
|
|
|
enable = true;
|
|
|
|
|
|
|
|
defaultNetwork.settings = {
|
|
|
|
dns_enable = true;
|
|
|
|
ipv6_enabled = true;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
containers.storage.settings = {
|
|
|
|
storage = {
|
|
|
|
driver = "overlay";
|
|
|
|
graphroot = "/data/slow/containers/storage";
|
|
|
|
runroot = "/run/containers/storage";
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
}
|