1{ pkgs, ... }:
2{
3 name = "nifi";
4 meta.maintainers = with pkgs.lib.maintainers; [ izorkin ];
5
6 nodes = {
7 nifi =
8 { pkgs, ... }:
9 {
10 virtualisation = {
11 memorySize = 2048;
12 diskSize = 4096;
13 };
14 services.nifi = {
15 enable = true;
16 enableHTTPS = false;
17 };
18 };
19 };
20
21 testScript = ''
22 nifi.start()
23
24 nifi.wait_for_unit("nifi.service")
25 nifi.wait_for_open_port(8080)
26
27 # Check if NiFi is running
28 nifi.succeed("curl --fail http://127.0.0.1:8080/nifi/login 2> /dev/null | grep 'NiFi Login'")
29
30 nifi.shutdown()
31 '';
32}