1let
2 opensearchTest =
3 extraSettings:
4 import ./make-test-python.nix (
5 { pkgs, lib, ... }:
6 {
7 name = "opensearch";
8 meta.maintainers = with pkgs.lib.maintainers; [ ];
9
10 nodes.machine = lib.mkMerge [
11 {
12 virtualisation.memorySize = 2048;
13 services.opensearch.enable = true;
14 }
15 extraSettings
16 ];
17
18 testScript = ''
19 machine.start()
20 machine.wait_for_unit("opensearch.service")
21 machine.wait_for_open_port(9200)
22
23 machine.succeed(
24 "curl --fail localhost:9200"
25 )
26 '';
27 }
28 );
29in
30{
31 opensearch = opensearchTest { };
32 opensearchCustomPathAndUser = opensearchTest {
33 services.opensearch.dataDir = "/var/opensearch_test";
34 services.opensearch.user = "open_search";
35 services.opensearch.group = "open_search";
36 systemd.tmpfiles.rules = [
37 "d /var/opensearch_test 0700 open_search open_search -"
38 ];
39 users = {
40 groups.open_search = { };
41 users.open_search = {
42 description = "OpenSearch daemon user";
43 group = "open_search";
44 isSystemUser = true;
45 };
46 };
47 };
48}