91 lines
2.2 KiB
Nix
91 lines
2.2 KiB
Nix
{
|
|
config,
|
|
pkgs,
|
|
...
|
|
}: {
|
|
imports = [ ./docker.nix ];
|
|
services.gitea-actions-runner = {
|
|
package = pkgs.forgejo-runner;
|
|
instances = {
|
|
agurk = {
|
|
enable = true;
|
|
name = "agurk";
|
|
url = "http://127.0.0.1:${toString config.services.forgejo.settings.server.HTTP_PORT}";
|
|
tokenFile = config.age.secrets.forgejo-runner-token.path;
|
|
labels = [
|
|
"native:host"
|
|
];
|
|
hostPackages = pkgs.lib.attrValues {
|
|
inherit
|
|
(pkgs)
|
|
nix
|
|
nodejs
|
|
git
|
|
bash
|
|
fd
|
|
ripgrep
|
|
openssh
|
|
;
|
|
};
|
|
settings = {
|
|
log.level = "info";
|
|
runner = {
|
|
file = ".runner";
|
|
capacity = 2;
|
|
timeout = "3h";
|
|
insecure = false;
|
|
fetch_timeout = "5s";
|
|
fetch_interval = "2s";
|
|
};
|
|
};
|
|
};
|
|
hval = pkgs.lib.mkIf false {
|
|
enable = true;
|
|
name = "hval";
|
|
url = "http://host.docker.internal:${toString config.services.forgejo.settings.server.HTTP_PORT}";
|
|
tokenFile = config.age.secrets.forgejo-runner-token.path;
|
|
labels = [
|
|
docker:docker://node:16-bullseye
|
|
];
|
|
hostPackages = pkgs.lib.attrValues {
|
|
inherit
|
|
(pkgs)
|
|
nix
|
|
nodejs
|
|
git
|
|
bash
|
|
fd
|
|
ripgrep
|
|
openssh
|
|
;
|
|
};
|
|
settings = {
|
|
log.level = "info";
|
|
runner = {
|
|
file = ".runner";
|
|
capacity = 2;
|
|
timeout = "3h";
|
|
insecure = false;
|
|
fetch_timeout = "5s";
|
|
fetch_interval = "2s";
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
|
|
system.activationScripts."make-gitea-runner-dir" = pkgs.lib.stringAfter ["var"] ''
|
|
mkdir -p /var/lib/gitea-runner/
|
|
# chown -R microvm:jellyfin /var/lib/gitea-runner
|
|
'';
|
|
|
|
# systemd.services = builtins.listToAttrs (pkgs.lib.attrsets.mapAttrsToList (
|
|
# name: value: {
|
|
# name = "gitea-runner-${name}";
|
|
# value = {
|
|
# serviceConfig.ReadWritePaths = "/srv/web";
|
|
# };
|
|
# }
|
|
# ) config.services.gitea-actions-runner.instances);
|
|
}
|