diff options
| author | Domen Kožar <domen@dev.si> | 2024-02-18 04:48:38 +0000 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-02-18 04:48:38 +0000 |
| commit | 0e6857fa1d632637488666c08e7b02c08e3178f8 (patch) | |
| tree | e6aa494d987aca229531b2cdda2231a5dbcf0742 /modules/services/github-runner/default.nix | |
| parent | 44f50a5ecaab72a61d5fd8e5c5717bc4bf9c25dd (diff) | |
| parent | 21b92addaf58b3b8f9f3c21b482f97f96d58895a (diff) | |
Merge pull request #859 from yaxitech/github-runner
github-runners: init module
Diffstat (limited to 'modules/services/github-runner/default.nix')
| -rw-r--r-- | modules/services/github-runner/default.nix | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/modules/services/github-runner/default.nix b/modules/services/github-runner/default.nix new file mode 100644 index 0000000..7937980 --- /dev/null +++ b/modules/services/github-runner/default.nix @@ -0,0 +1,37 @@ +{ config, lib, ... }: +let + anyEnabled = lib.any (cfg: cfg.enable) (lib.attrValues config.services.github-runners); +in +{ + imports = [ + ./options.nix + ./config.nix + ]; + + config.assertions = lib.mkIf anyEnabled [ + { + assertion = lib.elem "github-runner" config.users.knownGroups; + message = "set `users.knownGroups` to enable `github-runner` group"; + } + { + assertion = lib.elem "github-runner" config.users.knownUsers; + message = "set `users.knownUsers` to enable `github-runner` user"; + } + ]; + + config.users = lib.mkIf anyEnabled { + users."github-runner" = { + createHome = true; + uid = lib.mkDefault 533; + gid = lib.mkDefault config.users.groups.github-runner.gid; + home = lib.mkDefault "/var/lib/github-runners"; + shell = "/bin/bash"; + description = "GitHub Runner service user"; + }; + + groups."github-runner" = { + gid = lib.mkDefault 533; + description = "GitHub Runner service user group"; + }; + }; +} |
