From ffb4797dd303589d48bae466ec4b735438f2244e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B8rn=20Forsman?= Date: Sun, 22 Feb 2015 12:30:14 +0100 Subject: [PATCH] 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.) --- nixos/modules/services/networking/haproxy.nix | 43 +++---------------- 1 file changed, 7 insertions(+), 36 deletions(-) diff --git a/nixos/modules/services/networking/haproxy.nix b/nixos/modules/services/networking/haproxy.nix index 887ea79c34b..09e48ec4bff 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, haproxy.conf. @@ -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" ];