diff options
Diffstat (limited to 'nixos/modules/services/search/elasticsearch.nix')
-rw-r--r-- | nixos/modules/services/search/elasticsearch.nix | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/nixos/modules/services/search/elasticsearch.nix b/nixos/modules/services/search/elasticsearch.nix index 3436bd01d848..356cfd409ad4 100644 --- a/nixos/modules/services/search/elasticsearch.nix +++ b/nixos/modules/services/search/elasticsearch.nix @@ -6,7 +6,7 @@ let cfg = config.services.elasticsearch; esConfig = '' - network.host: ${cfg.host} + network.host: ${cfg.listenAddress} network.port: ${toString cfg.port} network.tcp.port: ${toString cfg.tcp_port} cluster.name: ${cfg.cluster_name} @@ -40,10 +40,11 @@ in { package = mkOption { description = "Elasticsearch package to use."; default = pkgs.elasticsearch; + defaultText = "pkgs.elasticsearch"; type = types.package; }; - host = mkOption { + listenAddress = mkOption { description = "Elasticsearch listen address."; default = "127.0.0.1"; type = types.str; @@ -127,6 +128,7 @@ in { description = "Elasticsearch Daemon"; wantedBy = [ "multi-user.target" ]; after = [ "network-interfaces.target" ]; + path = [ pkgs.inetutils ]; environment = { ES_HOME = cfg.dataDir; }; serviceConfig = { ExecStart = "${cfg.package}/bin/elasticsearch -Des.path.conf=${configDir} ${toString cfg.extraCmdLineOptions}"; @@ -138,11 +140,10 @@ in { if [ "$(id -u)" = 0 ]; then chown -R elasticsearch ${cfg.dataDir}; fi # Install plugins - rm ${cfg.dataDir}/plugins || true - ln -s ${esPlugins}/plugins ${cfg.dataDir}/plugins + ln -sfT ${esPlugins}/plugins ${cfg.dataDir}/plugins ''; postStart = mkBefore '' - until ${pkgs.curl}/bin/curl -s -o /dev/null ${cfg.host}:${toString cfg.port}; do + until ${pkgs.curl}/bin/curl -s -o /dev/null ${cfg.listenAddress}:${toString cfg.port}; do sleep 1 done ''; |