Files
athenix/sw/builders/services.nix
2025-12-17 10:59:13 -05:00

31 lines
785 B
Nix

{
config,
lib,
pkgs,
...
}:
with lib;
let
cfg = config.ugaif.sw;
builderCfg = cfg.builders;
in
mkIf builderCfg.githubRunner.enable {
services.github-runners.${builderCfg.githubRunner.name} = {
enable = true;
url = builderCfg.githubRunner.url;
tokenFile = builderCfg.githubRunner.tokenFile;
extraLabels = builderCfg.githubRunner.extraLabels;
user = builderCfg.githubRunner.user;
workDir = builderCfg.githubRunner.workDir;
replace = true;
};
# Add systemd condition to only start the service if token file exists
# This allows graceful deployment before the token is manually installed
systemd.services."github-runner-${builderCfg.githubRunner.name}".unitConfig = {
ConditionPathExists = builderCfg.githubRunner.tokenFile;
};
}