about summary refs log tree commit diff
path: root/nixos
diff options
context:
space:
mode:
authorBjørn Forsman <bjorn.forsman@gmail.com>2015-02-22 12:30:14 +0100
committerBjørn Forsman <bjorn.forsman@gmail.com>2015-02-22 12:30:14 +0100
commitffb4797dd303589d48bae466ec4b735438f2244e (patch)
tree23b7e556c79fd8459db60072f890b45fa40abca3 /nixos
parent419a4166a794f5178862f43038d797f4fc918994 (diff)
nixos/haproxy: remove broken default 'config'
HAProxy fails to start with the default 'config'. Better disable it and
assert that the user provides a suitable 'config'. (AFAICS, there cannot
really be a default config file for HAProxy.)
Diffstat (limited to 'nixos')
-rw-r--r--nixos/modules/services/networking/haproxy.nix43
1 files changed, 7 insertions, 36 deletions
diff --git a/nixos/modules/services/networking/haproxy.nix b/nixos/modules/services/networking/haproxy.nix
index 887ea79c34b17..09e48ec4bff07 100644
--- a/nixos/modules/services/networking/haproxy.nix
+++ b/nixos/modules/services/networking/haproxy.nix
@@ -18,42 +18,8 @@ with lib;
       };
 
       config = mkOption {
-        type = types.lines;
-        default =
-          ''
-          global
-            log 127.0.0.1 local6
-            maxconn  24000
-            daemon
-            nbproc 1
-
-          defaults
-            mode http
-            option httpclose
-
-            # Remove requests from the queue if people press stop button
-            option abortonclose
-
-            # Try to connect this many times on failure
-            retries 3
-
-            # If a client is bound to a particular backend but it goes down,
-            # send them to a different one
-            option redispatch
-
-            monitor-uri /haproxy-ping
-
-            timeout connect 7s
-            timeout queue   300s
-            timeout client  300s
-            timeout server  300s
-
-            # Enable status page at this URL, on the port HAProxy is bound to
-            stats enable
-            stats uri /haproxy-status
-            stats refresh 5s
-            stats realm Haproxy statistics
-          '';
+        type = types.nullOr types.lines;
+        default = null;
         description = ''
           Contents of the HAProxy configuration file,
           <filename>haproxy.conf</filename>.
@@ -66,6 +32,11 @@ with lib;
 
   config = mkIf cfg.enable {
 
+    assertions = [{
+      assertion = cfg.config != null;
+      message = "You must provide services.haproxy.config.";
+    }];
+
     systemd.services.haproxy = {
       description = "HAProxy";
       after = [ "network.target" ];