From 9f1ae74d80c94dcccdd18986405018ba451e3c0b Mon Sep 17 00:00:00 2001 From: Andy Sykes Date: Thu, 8 Aug 2013 17:46:32 +0100 Subject: [PATCH 1/5] Add mkdir -p command --- bin/mandy-mkdirp | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100755 bin/mandy-mkdirp diff --git a/bin/mandy-mkdirp b/bin/mandy-mkdirp new file mode 100755 index 0000000..aa5a8c6 --- /dev/null +++ b/bin/mandy-mkdirp @@ -0,0 +1,32 @@ +#!/usr/bin/env ruby +require 'optparse' +require 'ostruct' + +require "rubygems" +require "mandy" + +HadoopConfiguration.check_home_and_version + +exec('mandy-mkdir -h') unless ARGV.size >= 2 + + +options = OpenStruct.new + +OptionParser.new do |opts| + opts.banner = "USAGE: mandy-mkdirp directory [options]" + + opts.on("-c", "--conf HADOOP_CONF", "Use this cluster xml config file.") do |config| + options.config = config + end + + opts.on_tail("-h", "--help", "Show this message") do + puts opts + exit + end +end.parse! + +dir = ARGV[0] +config = options.config || 'cluster.xml' + +`$HADOOP_HOME/bin/hadoop fs -conf #{config} -mkdir -p #{dir}` +exit($?.exitstatus) From 3809b95949ae1baa2750303c613145165f1dd856 Mon Sep 17 00:00:00 2001 From: Andy Sykes Date: Thu, 8 Aug 2013 17:59:18 +0100 Subject: [PATCH 2/5] Add bin to gemspec --- mandy.gemspec | 2 ++ 1 file changed, 2 insertions(+) diff --git a/mandy.gemspec b/mandy.gemspec index d647d78..d3ca8bc 100644 --- a/mandy.gemspec +++ b/mandy.gemspec @@ -31,6 +31,7 @@ Gem::Specification.new do |s| mandy-mv mandy-cp mandy-mkdir + mandy-mkdirp mandy-exists mandy-install mandy-lsr @@ -52,6 +53,7 @@ Gem::Specification.new do |s| bin/mandy-mv bin/mandy-cp bin/mandy-mkdir + bin/mandy-mkdirp bin/mandy-exists bin/mandy-install bin/mandy-lsr From db1985845b9b1fb37df9408f826e0f715e2412c0 Mon Sep 17 00:00:00 2001 From: Lloyd Pick Date: Mon, 19 Aug 2013 12:51:43 +0100 Subject: [PATCH 3/5] put the whole path to the streaming jar --- bin/mandy-hadoop | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bin/mandy-hadoop b/bin/mandy-hadoop index 0df787d..1ac85b8 100755 --- a/bin/mandy-hadoop +++ b/bin/mandy-hadoop @@ -110,7 +110,7 @@ begin bootstrap_file = File.expand_path(File.join(File.dirname(__FILE__), '..', 'bootstrap.rb')) inputreader = job.input_format == :xml ? "StreamXmlRecordReader,begin=<#{job.input_format_options[:xml_tag]} ,end=" : nil - command = %($HADOOP_HOME/bin/hadoop jar $HADOOP_HOME/contrib/streaming/hadoop*streaming*.jar \ + command = %($HADOOP_HOME/bin/hadoop jar /usr/lib/hadoop-0.20-mapreduce/contrib/streaming/hadoop*streaming*.jar \ #{options.libjars.nil? ? '' : "-libjars \"#{options.libjars}\""} \ #{jobconf}\ -files "#{payload}","#{bootstrap_file}" \ From 94160be118601b4fbdd94153fd4785da16c25e58 Mon Sep 17 00:00:00 2001 From: Subhash Gupta Date: Wed, 21 Aug 2013 10:49:09 +0100 Subject: [PATCH 4/5] SuB# - using file instead of files --- bin/mandy-hadoop | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/bin/mandy-hadoop b/bin/mandy-hadoop index 1ac85b8..5975b73 100755 --- a/bin/mandy-hadoop +++ b/bin/mandy-hadoop @@ -113,7 +113,8 @@ begin command = %($HADOOP_HOME/bin/hadoop jar /usr/lib/hadoop-0.20-mapreduce/contrib/streaming/hadoop*streaming*.jar \ #{options.libjars.nil? ? '' : "-libjars \"#{options.libjars}\""} \ #{jobconf}\ - -files "#{payload}","#{bootstrap_file}" \ + -file "#{payload}" \ + -file "#{bootstrap_file}" \ -conf '#{config}' \ -inputformat '#{inputformat}' \ -outputformat '#{outputformat}' \ From 290b69d7ac1b42df42c1dfad3f3cdbdf6566fba5 Mon Sep 17 00:00:00 2001 From: Subhash Gupta Date: Wed, 21 Aug 2013 14:16:37 +0100 Subject: [PATCH 5/5] Sub# - file option getting conflicted with conf --- bin/mandy-hadoop | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/bin/mandy-hadoop b/bin/mandy-hadoop index 5975b73..e85c94c 100755 --- a/bin/mandy-hadoop +++ b/bin/mandy-hadoop @@ -113,8 +113,6 @@ begin command = %($HADOOP_HOME/bin/hadoop jar /usr/lib/hadoop-0.20-mapreduce/contrib/streaming/hadoop*streaming*.jar \ #{options.libjars.nil? ? '' : "-libjars \"#{options.libjars}\""} \ #{jobconf}\ - -file "#{payload}" \ - -file "#{bootstrap_file}" \ -conf '#{config}' \ -inputformat '#{inputformat}' \ -outputformat '#{outputformat}' \ @@ -123,7 +121,9 @@ begin -mapper "ruby bootstrap.rb #{File.basename(payload)} map #{filename} '#{job.name}'" \ -reducer "ruby bootstrap.rb #{File.basename(payload)} reduce #{filename} '#{job.name}'" \ #{ cmdenv.nil? ? '' : "-cmdenv #{cmdenv}" }\ - -output "#{output}" 2>&1) + -output "#{output}" \ + -file "#{payload}" \ + -file "#{bootstrap_file}" 2>&1) result = [] IO.popen(command, 'r') do |subprocess|