summary refs log tree commit diff
path: root/nixos/modules/services/misc/gitlab.nix
diff options
context:
space:
mode:
authorFlorian Klink <flokli@flokli.de>2020-09-06 15:34:02 +0200
committerGitHub <noreply@github.com>2020-09-06 15:34:02 +0200
commit569fdb2c352b429900e5c4397627c836ea80ee8d (patch)
treeeb78451674ebffffd923ec5c73ad322fb9231160 /nixos/modules/services/misc/gitlab.nix
parent8cf4c193b9959c117cfbd5e91025cead50e9735f (diff)
parentae1dada42f5b668a9f924341d3422f357986aa3a (diff)
downloadnixpkgs-569fdb2c352b429900e5c4397627c836ea80ee8d.tar
nixpkgs-569fdb2c352b429900e5c4397627c836ea80ee8d.tar.gz
nixpkgs-569fdb2c352b429900e5c4397627c836ea80ee8d.tar.bz2
nixpkgs-569fdb2c352b429900e5c4397627c836ea80ee8d.tar.lz
nixpkgs-569fdb2c352b429900e5c4397627c836ea80ee8d.tar.xz
nixpkgs-569fdb2c352b429900e5c4397627c836ea80ee8d.tar.zst
nixpkgs-569fdb2c352b429900e5c4397627c836ea80ee8d.zip
Merge pull request #93424 from helsinki-systems/feat/gitlab-mailroom
nixos/gitlab: Support incoming mail
Diffstat (limited to 'nixos/modules/services/misc/gitlab.nix')
-rw-r--r--nixos/modules/services/misc/gitlab.nix17
1 files changed, 17 insertions, 0 deletions
diff --git a/nixos/modules/services/misc/gitlab.nix b/nixos/modules/services/misc/gitlab.nix
index 425f35f37cb..9896b8023e4 100644
--- a/nixos/modules/services/misc/gitlab.nix
+++ b/nixos/modules/services/misc/gitlab.nix
@@ -783,6 +783,23 @@ in {
       };
     };
 
+    systemd.services.gitlab-mailroom = mkIf (gitlabConfig.production.incoming_email.enabled or false) {
+      description = "GitLab incoming mail daemon";
+      after = [ "network.target" "redis.service" "gitlab.service" ]; # gitlab.service creates configs
+      wantedBy = [ "multi-user.target" ];
+      environment = gitlabEnv;
+      serviceConfig = {
+        Type = "simple";
+        TimeoutSec = "infinity";
+        Restart = "on-failure";
+
+        User = cfg.user;
+        Group = cfg.group;
+        ExecStart = "${cfg.packages.gitlab.rubyEnv}/bin/bundle exec mail_room -c ${cfg.packages.gitlab}/share/gitlab/config.dist/mail_room.yml";
+        WorkingDirectory = gitlabEnv.HOME;
+      };
+    };
+
     systemd.services.gitlab = {
       after = [ "gitlab-workhorse.service" "gitaly.service" "network.target" "gitlab-postgresql.service" "redis.service" ];
       requires = [ "gitlab-sidekiq.service" ];