summaryrefslogtreecommitdiffstats
path: root/nixos/tests/hadoop/yarn.nix
blob: 3aa5e226b2eb75462c9a9f13feb0e20aeb37c175 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
# This only tests if YARN is able to start its services
import ../make-test-python.nix (
  { package, ... }:
  {
    name = "hadoop-${package.version}-yarn";

    nodes = {
      resourcemanager =
        { ... }:
        {
          services.hadoop = {
            inherit package;
            yarn.resourcemanager = {
              enable = true;
              openFirewall = true;
            };
          };
        };
      nodemanager =
        { options, lib, ... }:
        {
          services.hadoop = {
            inherit package;
            yarn.nodemanager = {
              enable = true;
              openFirewall = true;
              useCGroups = false;
            };
            yarnSite = {
              "yarn.resourcemanager.hostname" = "resourcemanager";
              "yarn.nodemanager.log-dirs" = "/tmp/userlogs";
            };
          };
        };
    };

    testScript = ''
      start_all()

      resourcemanager.wait_for_unit("yarn-resourcemanager")
      resourcemanager.wait_for_unit("network.target")
      resourcemanager.wait_for_open_port(8031)
      resourcemanager.wait_for_open_port(8088)

      nodemanager.wait_for_unit("yarn-nodemanager")
      nodemanager.wait_for_unit("network.target")
      nodemanager.wait_for_open_port(8042)

      resourcemanager.succeed("curl -f http://localhost:8088")
      nodemanager.succeed("curl -f http://localhost:8042")
    '';
  }
)