winePackages.{staging,unstable}: 9.22 -> 10.0-rc4 (#368663)
[NixPkgs.git] / pkgs / applications / networking / cluster / hadoop / containerExecutor.nix
blob778ed6261df02afd2fbf548cd9711347513e0b3e
2   version,
3   stdenv,
4   fetchurl,
5   lib,
6   cmake,
7   openssl,
8   platformAttrs,
9   ...
12 stdenv.mkDerivation (finalAttrs: {
13   pname = "hadoop-yarn-containerexecutor";
14   inherit version;
16   src = fetchurl {
17     url = "mirror://apache/hadoop/common/hadoop-${finalAttrs.version}/hadoop-${finalAttrs.version}-src.tar.gz";
18     hash = platformAttrs.${stdenv.system}.srcHash;
19   };
20   sourceRoot =
21     "hadoop-${finalAttrs.version}-src/hadoop-yarn-project/hadoop-yarn/"
22     + "hadoop-yarn-server/hadoop-yarn-server-nodemanager/src";
24   nativeBuildInputs = [ cmake ];
25   buildInputs = [ openssl ];
26   cmakeFlags = [ "-DHADOOP_CONF_DIR=/run/wrappers/yarn-nodemanager/etc/hadoop" ];
28   installPhase = ''
29     mkdir $out
30     mv target/var/empty/local/bin $out/
31   '';
33   meta = with lib; {
34     homepage = "https://hadoop.apache.org/";
35     description = "Framework for distributed processing of large data sets across clusters of computers";
36     license = licenses.asl20;
38     longDescription = ''
39       The Hadoop YARN Container Executor is a native component responsible for managing the lifecycle of containers
40       on individual nodes in a Hadoop YARN cluster. It launches, monitors, and terminates containers, ensuring that
41       resources like CPU and memory are allocated according to the policies defined in the ResourceManager.
42     '';
44     maintainers = with maintainers; [ illustris ];
45     platforms = filter (strings.hasSuffix "linux") (attrNames platformAttrs);
46   };