memcached: Add more options and extraOptions support
This commit is contained in:
parent
c7f61ee921
commit
df6312e2cb
@ -30,6 +30,36 @@ in
|
||||
description = "The user to run Memcached as";
|
||||
};
|
||||
|
||||
listen = mkOption {
|
||||
default = "127.0.0.1";
|
||||
description = "The IP address to bind to";
|
||||
};
|
||||
|
||||
port = mkOption {
|
||||
default = 11211;
|
||||
description = "The port to bind to";
|
||||
};
|
||||
|
||||
socket = mkOption {
|
||||
default = "";
|
||||
description = "Unix socket path to listen on. Setting this will disable network support";
|
||||
example = "/var/run/memcached";
|
||||
};
|
||||
|
||||
maxMemory = mkOption {
|
||||
default = 64;
|
||||
description = "The maximum amount of memory to use for storage, in megabytes.";
|
||||
};
|
||||
|
||||
maxConnections = mkOption {
|
||||
default = 1024;
|
||||
description = "The maximum number of simultaneous connections";
|
||||
};
|
||||
|
||||
extraOptions = mkOption {
|
||||
default = [];
|
||||
description = "A list of extra options that will be added as a suffix when running memcached";
|
||||
};
|
||||
};
|
||||
|
||||
};
|
||||
@ -52,7 +82,13 @@ in
|
||||
after = [ "network.target" ];
|
||||
|
||||
serviceConfig = {
|
||||
ExecStart = "${memcached}/bin/memcached";
|
||||
ExecStart =
|
||||
let
|
||||
networking = if cfg.socket != ""
|
||||
then "-s ${cfg.socket}"
|
||||
else "-l ${cfg.listen} -p ${toString cfg.port}";
|
||||
in "${memcached}/bin/memcached ${networking} -m ${toString cfg.maxMemory} -c ${toString cfg.maxConnections} ${concatStringsSep " " cfg.extraOptions}";
|
||||
|
||||
User = cfg.user;
|
||||
};
|
||||
};
|
||||
|
Loading…
Reference in New Issue
Block a user