summary refs log tree commit diff
path: root/nixos/modules/services/continuous-integration
diff options
context:
space:
mode:
Diffstat (limited to 'nixos/modules/services/continuous-integration')
-rw-r--r--nixos/modules/services/continuous-integration/gitlab-runner.nix8
1 files changed, 5 insertions, 3 deletions
diff --git a/nixos/modules/services/continuous-integration/gitlab-runner.nix b/nixos/modules/services/continuous-integration/gitlab-runner.nix
index ba90b1b1a2c0..048343b3360c 100644
--- a/nixos/modules/services/continuous-integration/gitlab-runner.nix
+++ b/nixos/modules/services/continuous-integration/gitlab-runner.nix
@@ -5,6 +5,7 @@ with lib;
 let
   cfg = config.services.gitlab-runner;
   configFile = pkgs.writeText "config.toml" cfg.configText;
+  hasDocker = config.virtualisation.docker.enable;
 in
 {
   options.services.gitlab-runner = {
@@ -33,8 +34,9 @@ in
   config = mkIf cfg.enable {
     systemd.services.gitlab-runner = {
       description = "Gitlab Runner";
-      after = [ "network.target" "docker.service" ];
-      requires = [ "docker.service" ];
+      after = [ "network.target" ]
+        ++ optional hasDocker "docker.service";
+      requires = optional hasDocker "docker.service";
       wantedBy = [ "multi-user.target" ];
       serviceConfig = {
         ExecStart = ''${cfg.package.bin}/bin/gitlab-runner run \
@@ -51,7 +53,7 @@ in
 
     users.extraUsers.gitlab-runner = {
       group = "gitlab-runner";
-      extraGroups = [ "docker" ];
+      extraGroups = optional hasDocker "docker";
       uid = config.ids.uids.gitlab-runner;
       home = cfg.workDir;
       createHome = true;