{ getPackage, lib, ... }: { name = "hbase-standalone"; meta = with lib.maintainers; { maintainers = [ illustris ]; }; nodes.hbase = { pkgs, ... }: let package = getPackage pkgs; in { services.hbase-standalone = { enable = true; inherit package; # Needed for standalone mode in hbase 2+ # This setting and standalone mode are not suitable for production settings."hbase.unsafe.stream.capability.enforce" = "false"; }; environment.systemPackages = [ package ]; }; testScript = '' start_all() hbase.wait_for_unit("hbase.service") hbase.wait_until_succeeds("echo \"create 't1','f1'\" | sudo -u hbase hbase shell -n") assert "NAME => 'f1'" in hbase.succeed("echo \"describe 't1'\" | sudo -u hbase hbase shell -n") ''; }