summary refs log tree commit diff
path: root/nixos/modules/services/continuous-integration/gitlab-runner.nix
diff options
context:
space:
mode:
Diffstat (limited to 'nixos/modules/services/continuous-integration/gitlab-runner.nix')
-rw-r--r--nixos/modules/services/continuous-integration/gitlab-runner.nix13
1 files changed, 12 insertions, 1 deletions
diff --git a/nixos/modules/services/continuous-integration/gitlab-runner.nix b/nixos/modules/services/continuous-integration/gitlab-runner.nix
index 1fe4d28f9f3..ba90b1b1a2c 100644
--- a/nixos/modules/services/continuous-integration/gitlab-runner.nix
+++ b/nixos/modules/services/continuous-integration/gitlab-runner.nix
@@ -20,6 +20,14 @@ in
       description = "The working directory used";
     };
 
+    package = mkOption {
+      description = "Gitlab Runner package to use";
+      default = pkgs.gitlab-runner;
+      defaultText = "pkgs.gitlab-runner";
+      type = types.package;
+      example = literalExample "pkgs.gitlab-runner_1_11";
+    };
+
   };
 
   config = mkIf cfg.enable {
@@ -29,7 +37,7 @@ in
       requires = [ "docker.service" ];
       wantedBy = [ "multi-user.target" ];
       serviceConfig = {
-        ExecStart = ''${pkgs.gitlab-runner.bin}/bin/gitlab-runner run \
+        ExecStart = ''${cfg.package.bin}/bin/gitlab-runner run \
           --working-directory ${cfg.workDir} \
           --config ${configFile} \
           --service gitlab-runner \
@@ -38,6 +46,9 @@ in
       };
     };
 
+    # Make the gitlab-runner command availabe so users can query the runner
+    environment.systemPackages = [ cfg.package ];
+
     users.extraUsers.gitlab-runner = {
       group = "gitlab-runner";
       extraGroups = [ "docker" ];