summary refs log tree commit diff
path: root/nixos/modules/services/search
diff options
context:
space:
mode:
authorSandro <sandro.jaeckel@gmail.com>2022-01-30 01:23:58 +0100
committerGitHub <noreply@github.com>2022-01-30 01:23:58 +0100
commitff0dd3afe052afef0a89d05fd5baed9e9fbe6016 (patch)
treee0d4031c0689af26896f36d8c168b1bd3bf6c585 /nixos/modules/services/search
parenta724f8dc2968d6eb9d8efd5943945d8ba3159841 (diff)
parent420f522dfaf3cb15e18db8e9602d296c4d460738 (diff)
downloadnixpkgs-ff0dd3afe052afef0a89d05fd5baed9e9fbe6016.tar
nixpkgs-ff0dd3afe052afef0a89d05fd5baed9e9fbe6016.tar.gz
nixpkgs-ff0dd3afe052afef0a89d05fd5baed9e9fbe6016.tar.bz2
nixpkgs-ff0dd3afe052afef0a89d05fd5baed9e9fbe6016.tar.lz
nixpkgs-ff0dd3afe052afef0a89d05fd5baed9e9fbe6016.tar.xz
nixpkgs-ff0dd3afe052afef0a89d05fd5baed9e9fbe6016.tar.zst
nixpkgs-ff0dd3afe052afef0a89d05fd5baed9e9fbe6016.zip
Merge pull request #153596 from illustris/elasticsearch
Diffstat (limited to 'nixos/modules/services/search')
-rw-r--r--nixos/modules/services/search/elasticsearch.nix14
1 files changed, 14 insertions, 0 deletions
diff --git a/nixos/modules/services/search/elasticsearch.nix b/nixos/modules/services/search/elasticsearch.nix
index 98c35a7ec84..041d0b3c43f 100644
--- a/nixos/modules/services/search/elasticsearch.nix
+++ b/nixos/modules/services/search/elasticsearch.nix
@@ -143,6 +143,17 @@ in
       example = lib.literalExpression "[ pkgs.elasticsearchPlugins.discovery-ec2 ]";
     };
 
+    restartIfChanged  = mkOption {
+      type = types.bool;
+      description = ''
+        Automatically restart the service on config change.
+        This can be set to false to defer restarts on a server or cluster.
+        Please consider the security implications of inadvertently running an older version,
+        and the possibility of unexpected behavior caused by inconsistent versions across a cluster when disabling this option.
+      '';
+      default = true;
+    };
+
   };
 
   ###### implementation
@@ -153,6 +164,7 @@ in
       wantedBy = [ "multi-user.target" ];
       after = [ "network.target" ];
       path = [ pkgs.inetutils ];
+      inherit (cfg) restartIfChanged;
       environment = {
         ES_HOME = cfg.dataDir;
         ES_JAVA_OPTS = toString cfg.extraJavaOptions;
@@ -163,6 +175,8 @@ in
         User = "elasticsearch";
         PermissionsStartOnly = true;
         LimitNOFILE = "1024000";
+        Restart = "always";
+        TimeoutStartSec = "infinity";
       };
       preStart = ''
         ${optionalString (!config.boot.isContainer) ''