OOZIE-947 Forward porting OOZIE-733 to branch 3.2.0 (Mona via virag)

git-svn-id: https://svn.apache.org/repos/asf/incubator/oozie/branches/branch-3.2@1373006 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/distro/src/main/bin/addtowar.sh b/distro/src/main/bin/addtowar.sh
index 5756420..76a482a 100644
--- a/distro/src/main/bin/addtowar.sh
+++ b/distro/src/main/bin/addtowar.sh
@@ -21,9 +21,9 @@
 function prepare() {
   tmpDir=/tmp/oozie-war-packing-$$
   rm -rf ${tmpDir}
-  mkdir ${tmpDir}	
+  mkdir ${tmpDir}
   tmpWarDir=${tmpDir}/oozie-war
-  mkdir ${tmpWarDir}	
+  mkdir ${tmpWarDir}
   checkExec "creating staging directory ${tmpDir}"
 }
 
@@ -71,7 +71,7 @@
 
 #finds a file under a directory any depth, file returns in variable RET
 function findFile() {
-   RET=`find -H ${1} -name ${2}`
+   RET=`find -H ${1} -name ${2} | grep -e "[0-9.a${hadoopJarsSuffix}].jar"`
    RET=`echo ${RET} | sed "s/ .*//"`
    if [ "${RET}" = "" ]; then
      echo
@@ -97,19 +97,23 @@
   version=$1
   if [ "${version}" = "0.20.1" ]; then
     #List is separated by ":"
-    hadoopJars="hadoop*core*.jar"
+    hadoopJars="hadoop-core*.jar"
   elif [ "${version}" = "0.20.2" ]; then
     #List is separated by ":"
-    hadoopJars="hadoop*core*.jar"
+    hadoopJars="hadoop-core*.jar"
   elif [ "${version}" = "0.20.104" ]; then
     #List is separated by ":"
-    hadoopJars="hadoop*core*.jar:jackson-core-asl-*.jar:jackson-mapper-asl-*.jar"
+    hadoopJars="hadoop-core*.jar:jackson-core-asl-*.jar:jackson-mapper-asl-*.jar"
   elif [ "${version}" = "0.20.200" ]; then
     #List is separated by ":"
-    hadoopJars="hadoop*core*.jar:jackson-core-asl-*.jar:jackson-mapper-asl-*.jar:commons-configuration-*.jar"
+    hadoopJars="hadoop-core*.jar:jackson-core-asl-*.jar:jackson-mapper-asl-*.jar:commons-configuration-*.jar"
+  elif [[ "${version}" =~ .*23 ]]; then
+    suffix="-[0-9.]*"
+    #List is separated by ":"
+    hadoopJars="hadoop-mapreduce-client-core${suffix}.jar:hadoop-mapreduce-client-common${suffix}.jar:hadoop-mapreduce-client-jobclient${suffix}.jar:hadoop-mapreduce-client-app${suffix}.jar:hadoop-yarn-common${suffix}.jar:hadoop-yarn-api${suffix}.jar:hadoop-hdfs${suffix}.jar:hadoop-common${suffix}.jar:hadoop-auth${suffix}.jar:guava*.jar:protobuf-*.jar:avro-ipc-*.jar:jackson-core-asl-*.jar:jackson-mapper-asl-*.jar:commons-configuration-*.jar"
   else
     echo
-    echo "Exiting: Unsupported Hadoop version '${hadoopVer}', supported versions: 0.20.1, 0.20.2, 0.20.104 and 0.20.200"
+    echo "Exiting: Unsupported Hadoop version '${hadoopVer}', supported versions: 0.20.1, 0.20.2, 0.20.104, 0.20.200 and 0.23.x"
     echo
     cleanUp
     exit -1;
@@ -121,6 +125,7 @@
   echo " Options: -inputwar INPUT_OOZIE_WAR"
   echo "          -outputwar OUTPUT_OOZIE_WAR"
   echo "          [-hadoop HADOOP_VERSION HADOOP_PATH]"
+  echo "          [-hadoopJarsSNAPSHOT] (if Hadoop jars version on system is SNAPSHOT)"
   echo "          [-extjs EXTJS_PATH] (expanded or ZIP)"
   echo "          [-jars JARS_PATH] (multiple JAR path separated by ':')"
   echo
@@ -139,6 +144,7 @@
 addJars=""
 hadoopVersion=""
 hadoopHome=""
+hadoopJarsSuffix=""
 extjsHome=""
 jarsPath=""
 inputWar=""
@@ -166,6 +172,9 @@
     fi
     hadoopHome=$1
     addHadoop=true
+  elif [ "$1" = "-hadoopJarsSNAPSHOT" ]; then
+    shift
+    hadoopJarsSuffix="SNAPSHOT"
   elif [ "$1" = "-extjs" ]; then
     shift
     if [ $# -eq 0 ]; then
@@ -261,15 +270,18 @@
     exit -1
   fi  
   ## adding hadoop
+    echo "Injecting following Hadoop JARs"
+    echo
     for jar in ${hadoopJars//:/$'\n'}
     do
       findFile ${hadoopHome} ${jar}
       jar=${RET}
+      echo ${jar}
       cp ${jar} ${tmpWarDir}/WEB-INF/lib/
       checkExec "copying jar ${jar} to staging"
-    done  
+    done
 fi
-  
+
 if [ "${addExtjs}" = "true" ]; then
   if [ ! "${components}" = "" ];then
     components="${components}, "
diff --git a/release-log.txt b/release-log.txt
index 6690a5c..2c61b06 100644
--- a/release-log.txt
+++ b/release-log.txt
@@ -4,6 +4,7 @@
 
 -- Oozie 3.2.0 release
 
+OOZIE-947 Forward porting OOZIE-733 to branch 3.2.0 (Mona via virag)
 OOZIE-852 remove pipes binaries from the source (tucu)
 OOZIE-851 demo workflow example does not enable sharelib for pig and streaming (tucu)
 OOZIE-850 apache-rat report should be a single global report file (tucu)
@@ -244,10 +245,10 @@
 GH-0072 Resume a coordinator bundle.
 GH-0065 Kill a coordinator bundle.
 GH-0074 Variable definition at coordinator bundle level.
-GH-0098 XCommand Code refactoring. 
+GH-0098 XCommand Code refactoring.
 GH-0099 JPA command refactor.
 GH-0077 Reprocessing of coordinator jobs.
-GH-0078 Option to rerun from failed node. 
+GH-0078 Option to rerun from failed node.
 GH-0075 Provide access to date list.
 GH-0077 Reprocess a complete coordinator bundle.
 GH-0110 Redesign Coordinator Job's status.