summary refs log tree commit diff
path: root/nixos/modules/services/misc/redmine.nix
diff options
context:
space:
mode:
authorAaron Andersen <aaron@fosslib.net>2019-02-01 09:17:05 -0500
committerAaron Andersen <aaron@fosslib.net>2019-02-01 09:17:05 -0500
commit52bd7c5f2a4501c33c72aa89575626a1307f38ae (patch)
tree89ab553b3a51ee899a2cb06709c4e3a284f60205 /nixos/modules/services/misc/redmine.nix
parent6dea8fe56e0341b57f441be9d1dcfb59cfe59b1c (diff)
downloadnixpkgs-52bd7c5f2a4501c33c72aa89575626a1307f38ae.tar
nixpkgs-52bd7c5f2a4501c33c72aa89575626a1307f38ae.tar.gz
nixpkgs-52bd7c5f2a4501c33c72aa89575626a1307f38ae.tar.bz2
nixpkgs-52bd7c5f2a4501c33c72aa89575626a1307f38ae.tar.lz
nixpkgs-52bd7c5f2a4501c33c72aa89575626a1307f38ae.tar.xz
nixpkgs-52bd7c5f2a4501c33c72aa89575626a1307f38ae.tar.zst
nixpkgs-52bd7c5f2a4501c33c72aa89575626a1307f38ae.zip
nixos/redmine: add an extraEnv option (which could be used to turn on debug logging, etc...), enable automatic log rotation
Diffstat (limited to 'nixos/modules/services/misc/redmine.nix')
-rw-r--r--nixos/modules/services/misc/redmine.nix23
1 files changed, 23 insertions, 0 deletions
diff --git a/nixos/modules/services/misc/redmine.nix b/nixos/modules/services/misc/redmine.nix
index 3c322ba1c3e..d7250c5f35a 100644
--- a/nixos/modules/services/misc/redmine.nix
+++ b/nixos/modules/services/misc/redmine.nix
@@ -30,6 +30,13 @@ let
     ${cfg.extraConfig}
   '';
 
+  additionalEnvironment = pkgs.writeText "additional_environment.rb" ''
+    config.logger = Logger.new("${cfg.stateDir}/log/production.log", 14, 1048576)
+    config.logger.level = Logger::INFO
+
+    ${cfg.extraEnv}
+  '';
+
   unpackTheme = unpack "theme";
   unpackPlugin = unpack "plugin";
   unpack = id: (name: source:
@@ -103,6 +110,19 @@ in
         '';
       };
 
+      extraEnv = mkOption {
+        type = types.lines;
+        default = "";
+        description = ''
+          Extra configuration in additional_environment.rb.
+
+          See https://svn.redmine.org/redmine/trunk/config/additional_environment.rb.example
+        '';
+        example = literalExample ''
+          config.logger.level = Logger::DEBUG
+        '';
+      };
+
       themes = mkOption {
         type = types.attrsOf types.path;
         default = {};
@@ -249,6 +269,9 @@ in
         # link in the application configuration
         ln -fs ${configurationYml} "${cfg.stateDir}/config/configuration.yml"
 
+        # link in the additional environment configuration
+        ln -fs ${additionalEnvironment} "${cfg.stateDir}/config/additional_environment.rb"
+
 
         # link in all user specified themes
         rm -rf "${cfg.stateDir}/public/themes/"*