hbase: 0.98.24 -> 2.4.11

This commit is contained in:
illustris 2022-03-29 01:49:17 +05:30
parent 6701dd6a4d
commit 2b0c299990
4 changed files with 89 additions and 19 deletions

View file

@ -199,6 +199,9 @@ in
haste-server = handleTest ./haste-server.nix {}; haste-server = handleTest ./haste-server.nix {};
haproxy = handleTest ./haproxy.nix {}; haproxy = handleTest ./haproxy.nix {};
hardened = handleTest ./hardened.nix {}; hardened = handleTest ./hardened.nix {};
hbase1 = handleTest ./hbase.nix { package=pkgs.hbase1; };
hbase2 = handleTest ./hbase.nix { package=pkgs.hbase2; };
hbase3 = handleTest ./hbase.nix { package=pkgs.hbase3; };
hedgedoc = handleTest ./hedgedoc.nix {}; hedgedoc = handleTest ./hedgedoc.nix {};
herbstluftwm = handleTest ./herbstluftwm.nix {}; herbstluftwm = handleTest ./herbstluftwm.nix {};
installed-tests = pkgs.recurseIntoAttrs (handleTest ./installed-tests {}); installed-tests = pkgs.recurseIntoAttrs (handleTest ./installed-tests {});

30
nixos/tests/hbase.nix Normal file
View file

@ -0,0 +1,30 @@
import ./make-test-python.nix ({ pkgs, lib, package ? pkgs.hbase, ... }:
{
name = "hbase";
meta = with lib.maintainers; {
maintainers = [ illustris ];
};
nodes = {
hbase = { pkgs, ... }: {
services.hbase = {
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 = with pkgs; [
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")
'';
})

View file

@ -1,22 +1,55 @@
{ lib, stdenv, fetchurl, makeWrapper }: { lib
stdenv.mkDerivation rec { , stdenv
pname = "hbase"; , fetchurl
version = "0.98.24"; , makeWrapper
, jdk8_headless
, jdk11_headless
, nixosTests
}:
src = fetchurl { let common = { version, hash, jdk ? jdk11_headless, tests }:
url = "mirror://apache/hbase/${version}/hbase-${version}-hadoop2-bin.tar.gz"; stdenv.mkDerivation rec {
sha256 = "0kz72wqsii09v9hxkw10mzyvjhji5sx3l6aijjalgbybavpcxglb"; pname = "hbase";
inherit version;
src = fetchurl {
url = "mirror://apache/hbase/${version}/hbase-${version}-bin.tar.gz";
inherit hash;
};
nativeBuildInputs = [ makeWrapper ];
installPhase = ''
mkdir -p $out
cp -R * $out
wrapProgram $out/bin/hbase --set-default JAVA_HOME ${jdk.home}
'';
passthru = { inherit tests; };
meta = with lib; {
description = "A distributed, scalable, big data store";
homepage = "https://hbase.apache.org";
license = licenses.asl20;
maintainers = with lib.maintainers; [ illustris ];
platforms = lib.platforms.linux;
};
}; };
in
nativeBuildInputs = [ makeWrapper ]; {
installPhase = '' hbase_1_7 = common {
mkdir -p $out version = "1.7.1";
cp -R * $out hash = "sha256-DrH2G79QLT8L0YTTmAGC9pUWU8semSaTOsrsQRCI2rY=";
''; jdk = jdk8_headless;
meta = with lib; { tests.standalone = nixosTests.hbase1;
description = "A distributed, scalable, big data store"; };
homepage = "https://hbase.apache.org"; hbase_2_4 = common {
license = licenses.asl20; version = "2.4.11";
platforms = lib.platforms.linux; hash = "sha256-m0vjUtPaj8czHHh+rQNJJgrFAM744cHd06KE0ut7QeU=";
tests.standalone = nixosTests.hbase2;
};
hbase_3_0 = common {
version = "3.0.0-alpha-2";
hash = "sha256-QPvgO1BeFWvMT5PdUm/SL92ZgvSvYIuJbzolbBTenz4=";
tests.standalone = nixosTests.hbase3;
}; };
} }

View file

@ -21414,7 +21414,11 @@ with pkgs;
hasura-cli = callPackage ../servers/hasura/cli.nix { }; hasura-cli = callPackage ../servers/hasura/cli.nix { };
hbase = callPackage ../servers/hbase {}; inherit (callPackage ../servers/hbase {}) hbase_1_7 hbase_2_4 hbase_3_0;
hbase1 = hbase_1_7;
hbase2 = hbase_2_4;
hbase3 = hbase_3_0;
hbase = hbase2; # when updating, point to the latest stable release
headphones = callPackage ../servers/headphones {}; headphones = callPackage ../servers/headphones {};