aboutsummaryrefslogtreecommitdiff
path: root/nixpkgs/nixos/modules/services/cluster/hadoop/conf.nix
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/nixos/modules/services/cluster/hadoop/conf.nix')
-rw-r--r--nixpkgs/nixos/modules/services/cluster/hadoop/conf.nix31
1 files changed, 31 insertions, 0 deletions
diff --git a/nixpkgs/nixos/modules/services/cluster/hadoop/conf.nix b/nixpkgs/nixos/modules/services/cluster/hadoop/conf.nix
new file mode 100644
index 00000000000..38db10406b9
--- /dev/null
+++ b/nixpkgs/nixos/modules/services/cluster/hadoop/conf.nix
@@ -0,0 +1,31 @@
+{ hadoop, pkgs }:
+let
+ propertyXml = name: value: ''
+ <property>
+ <name>${name}</name>
+ <value>${builtins.toString value}</value>
+ </property>
+ '';
+ siteXml = fileName: properties: pkgs.writeTextDir fileName ''
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
+ <!-- generated by NixOS -->
+ <configuration>
+ ${builtins.concatStringsSep "\n" (pkgs.lib.mapAttrsToList propertyXml properties)}
+ </configuration>
+ '';
+ userFunctions = ''
+ hadoop_verify_logdir() {
+ echo Skipping verification of log directory
+ }
+ '';
+in
+pkgs.buildEnv {
+ name = "hadoop-conf";
+ paths = [
+ (siteXml "core-site.xml" hadoop.coreSite)
+ (siteXml "hdfs-site.xml" hadoop.hdfsSite)
+ (siteXml "mapred-site.xml" hadoop.mapredSite)
+ (siteXml "yarn-site.xml" hadoop.yarnSite)
+ (pkgs.writeTextDir "hadoop-user-functions.sh" userFunctions)
+ ];
+}