hadoop,hbase: better default for HADOOP_CONF_DIR and HBASE_CONF_DIR

order of precedence:
- env var HADOOP_CONF_DIR for hadoop and HBASE_CONF_DIR for hbase, if set
- /etc/hadoop-conf, if present
- default confs in package

Changed files
+5 -2
pkgs
applications
networking
cluster
hadoop
servers
hbase
+2 -1
pkgs/applications/networking/cluster/hadoop/default.nix
···
makeWrapper "$n" "$out/bin/$(basename $n)"\
--set-default JAVA_HOME ${jdk.home}\
--set-default HADOOP_HOME $out/lib/${untarDir}\
-
--set-default HADOOP_CONF_DIR /etc/hadoop-conf/\
+
--run "test -d /etc/hadoop-conf && export HADOOP_CONF_DIR=\''${HADOOP_CONF_DIR-'/etc/hadoop-conf/'}"\
+
--set-default HADOOP_CONF_DIR $out/lib/${untarDir}/etc/hadoop/\
--prefix PATH : "${makeBinPath [ bash coreutils which]}"\
--prefix JAVA_LIBRARY_PATH : "${makeLibraryPath buildInputs}"
done
+3 -1
pkgs/servers/hbase/default.nix
···
installPhase = ''
mkdir -p $out
cp -R * $out
-
wrapProgram $out/bin/hbase --set-default JAVA_HOME ${jdk.home}
+
wrapProgram $out/bin/hbase --set-default JAVA_HOME ${jdk.home} \
+
--run "test -d /etc/hadoop-conf && export HBASE_CONF_DIR=\''${HBASE_CONF_DIR-'/etc/hadoop-conf/'}" \
+
--set-default HBASE_CONF_DIR "$out/conf/"
'';
passthru = { inherit tests; };