HADOOP-11653. shellprofiles should require .sh extension (Brahma Reddy Battula via aw)
Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/667c3fce Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/667c3fce Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/667c3fce Branch: refs/heads/HDFS-7285 Commit: 667c3fce2d3404c4daf5cdf2a034e7a53d3754c7 Parents: c6199e7 Author: Allen Wittenauer <a...@apache.org> Authored: Fri Mar 6 13:54:11 2015 -0800 Committer: Jing Zhao <ji...@apache.org> Committed: Mon Mar 9 13:11:26 2015 -0700 ---------------------------------------------------------------------- hadoop-common-project/hadoop-common/CHANGES.txt | 3 + .../src/main/bin/hadoop-functions.sh | 4 +- .../src/main/conf/shellprofile.d/example | 106 ------------------- .../src/main/conf/shellprofile.d/example.sh | 106 +++++++++++++++++++ .../hadoop-hdfs/src/main/shellprofile.d/hdfs | 36 ------- .../hadoop-hdfs/src/main/shellprofile.d/hdfs.sh | 36 +++++++ .../shellprofile.d/mapreduce | 41 ------- .../shellprofile.d/mapreduce.sh | 41 +++++++ .../hadoop-yarn/shellprofile.d/yarn | 62 ----------- .../hadoop-yarn/shellprofile.d/yarn.sh | 62 +++++++++++ 10 files changed, 250 insertions(+), 247 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/hadoop/blob/667c3fce/hadoop-common-project/hadoop-common/CHANGES.txt ---------------------------------------------------------------------- diff --git a/hadoop-common-project/hadoop-common/CHANGES.txt b/hadoop-common-project/hadoop-common/CHANGES.txt index 65c6d85..628faa3 100644 --- a/hadoop-common-project/hadoop-common/CHANGES.txt +++ b/hadoop-common-project/hadoop-common/CHANGES.txt @@ -414,6 +414,9 @@ Trunk (Unreleased) HADOOP-11602. Fix toUpperCase/toLowerCase to use Locale.ENGLISH. (ozawa) + HADOOP-11653. shellprofiles should require .sh extension + (Brahma Reddy Battula via aw) + OPTIMIZATIONS HADOOP-7761. Improve the performance of raw comparisons. (todd) http://git-wip-us.apache.org/repos/asf/hadoop/blob/667c3fce/hadoop-common-project/hadoop-common/src/main/bin/hadoop-functions.sh ---------------------------------------------------------------------- diff --git a/hadoop-common-project/hadoop-common/src/main/bin/hadoop-functions.sh b/hadoop-common-project/hadoop-common/src/main/bin/hadoop-functions.sh index bccbe25..9488e3c 100644 --- a/hadoop-common-project/hadoop-common/src/main/bin/hadoop-functions.sh +++ b/hadoop-common-project/hadoop-common/src/main/bin/hadoop-functions.sh @@ -162,13 +162,13 @@ function hadoop_import_shellprofiles local files2 if [[ -d "${HADOOP_LIBEXEC_DIR}/shellprofile.d" ]]; then - files1=(${HADOOP_LIBEXEC_DIR}/shellprofile.d/*) + files1=(${HADOOP_LIBEXEC_DIR}/shellprofile.d/*.sh) else hadoop_error "WARNING: ${HADOOP_LIBEXEC_DIR}/shellprofile.d doesn't exist. Functionality may not work." fi if [[ -d "${HADOOP_CONF_DIR}/shellprofile.d" ]]; then - files2=(${HADOOP_CONF_DIR}/shellprofile.d/*) + files2=(${HADOOP_CONF_DIR}/shellprofile.d/*.sh) fi for i in "${files1[@]}" "${files2[@]}" http://git-wip-us.apache.org/repos/asf/hadoop/blob/667c3fce/hadoop-common-project/hadoop-common/src/main/conf/shellprofile.d/example ---------------------------------------------------------------------- diff --git a/hadoop-common-project/hadoop-common/src/main/conf/shellprofile.d/example b/hadoop-common-project/hadoop-common/src/main/conf/shellprofile.d/example deleted file mode 100644 index dc50821..0000000 --- a/hadoop-common-project/hadoop-common/src/main/conf/shellprofile.d/example +++ /dev/null @@ -1,106 +0,0 @@ -# Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed with -# this work for additional information regarding copyright ownership. -# The ASF licenses this file to You under the Apache License, Version 2.0 -# (the "License"); you may not use this file except in compliance with -# the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# -# This is an example shell profile. It does not do anything other than -# show an example of what the general structure and API of the pluggable -# shell profile code looks like. -# -# - -# -# First, register the profile: -# -# hadoop_add_profile example -# -# -# This profile name determines what the name of the functions will -# be. The general pattern is _(profilename)_hadoop_(capability). There -# are currently four capabilities: -# * init -# * classpath -# * nativelib -# * finalize -# -# None of these functions are required. Examples of all four follow... - -# -# The _hadoop_init function is called near the very beginning of the -# execution cycle. System and site-level shell env vars have been set, -# command line processing finished, etc. Note that the user's .hadooprc -# has not yet been processed. This is to allow them to override anything -# that may be set here or potentially a dependency! -# -# function _example_hadoop_init -# { -# # This example expects a home. So set a default if not set. -# EXAMPLE_HOME="${EXAMPLE_HOME:-/usr/example}" -# } -# - -# -# The _hadoop_classpath function is called when the shell code is -# establishing the classpath. This function should use the -# shell hadoop_add_classpath function rather than directly -# manipulating the CLASSPATH variable. This ensures that the -# CLASSPATH does not have duplicates and provides basic -# sanity checks -# -# function _example_hadoop_classpath -# { -# # jars that should be near the front -# hadoop_add_classpath "${EXAMPLE_HOME}/share/pre-jars/*" before -# -# # jars that should be near the back -# hadoop_add_classpath "${EXAMPLE_HOME}/share/post-jars/*" after -# } - -# -# The _hadoop_nativelib function is called when the shell code is -# buliding the locations for linkable shared libraries. Depending -# upon needs, there are shell function calls that are useful -# to use here: -# -# hadoop_add_javalibpath will push the path onto the command line -# and into the java.library.path system property. In the majority -# of cases, this should be sufficient, especially if the shared -# library has been linked correctly with $ORIGIN. -# -# hadoop_add_ldlibpath will push the path into the LD_LIBRARY_PATH -# env var. This should be unnecessary for most code. -# -# function _example_hadoop_nativelib -# { -# # our library is standalone, so just need the basic path -# # added. Using after so we are later in the link list -# hadoop_add_javalibpath "${EXAMPLE_HOME}/lib" after -# } - -# -# The _hadoop_finalize function is called to finish up whatever -# extra work needs to be done prior to exec'ing java or some other -# binary. This is where command line properties should get added -# and any last minute work. This is called prior to Hadoop common -# which means that one can override any parameters that Hadoop -# would normally put here... so be careful! -# -# Useful functions here include hadoop_add_param and for -# Windows compabitility, hadoop_translate_cygwin_path. -# -# function _example_hadoop_finalize -# { -# # we need a property for our feature -# hadoop_add_param HADOOP_OPTS Dexample.feature "-Dexample.feature=awesome" -# } http://git-wip-us.apache.org/repos/asf/hadoop/blob/667c3fce/hadoop-common-project/hadoop-common/src/main/conf/shellprofile.d/example.sh ---------------------------------------------------------------------- diff --git a/hadoop-common-project/hadoop-common/src/main/conf/shellprofile.d/example.sh b/hadoop-common-project/hadoop-common/src/main/conf/shellprofile.d/example.sh new file mode 100644 index 0000000..dc50821 --- /dev/null +++ b/hadoop-common-project/hadoop-common/src/main/conf/shellprofile.d/example.sh @@ -0,0 +1,106 @@ +# Licensed to the Apache Software Foundation (ASF) under one or more +# contributor license agreements. See the NOTICE file distributed with +# this work for additional information regarding copyright ownership. +# The ASF licenses this file to You under the Apache License, Version 2.0 +# (the "License"); you may not use this file except in compliance with +# the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# +# This is an example shell profile. It does not do anything other than +# show an example of what the general structure and API of the pluggable +# shell profile code looks like. +# +# + +# +# First, register the profile: +# +# hadoop_add_profile example +# +# +# This profile name determines what the name of the functions will +# be. The general pattern is _(profilename)_hadoop_(capability). There +# are currently four capabilities: +# * init +# * classpath +# * nativelib +# * finalize +# +# None of these functions are required. Examples of all four follow... + +# +# The _hadoop_init function is called near the very beginning of the +# execution cycle. System and site-level shell env vars have been set, +# command line processing finished, etc. Note that the user's .hadooprc +# has not yet been processed. This is to allow them to override anything +# that may be set here or potentially a dependency! +# +# function _example_hadoop_init +# { +# # This example expects a home. So set a default if not set. +# EXAMPLE_HOME="${EXAMPLE_HOME:-/usr/example}" +# } +# + +# +# The _hadoop_classpath function is called when the shell code is +# establishing the classpath. This function should use the +# shell hadoop_add_classpath function rather than directly +# manipulating the CLASSPATH variable. This ensures that the +# CLASSPATH does not have duplicates and provides basic +# sanity checks +# +# function _example_hadoop_classpath +# { +# # jars that should be near the front +# hadoop_add_classpath "${EXAMPLE_HOME}/share/pre-jars/*" before +# +# # jars that should be near the back +# hadoop_add_classpath "${EXAMPLE_HOME}/share/post-jars/*" after +# } + +# +# The _hadoop_nativelib function is called when the shell code is +# buliding the locations for linkable shared libraries. Depending +# upon needs, there are shell function calls that are useful +# to use here: +# +# hadoop_add_javalibpath will push the path onto the command line +# and into the java.library.path system property. In the majority +# of cases, this should be sufficient, especially if the shared +# library has been linked correctly with $ORIGIN. +# +# hadoop_add_ldlibpath will push the path into the LD_LIBRARY_PATH +# env var. This should be unnecessary for most code. +# +# function _example_hadoop_nativelib +# { +# # our library is standalone, so just need the basic path +# # added. Using after so we are later in the link list +# hadoop_add_javalibpath "${EXAMPLE_HOME}/lib" after +# } + +# +# The _hadoop_finalize function is called to finish up whatever +# extra work needs to be done prior to exec'ing java or some other +# binary. This is where command line properties should get added +# and any last minute work. This is called prior to Hadoop common +# which means that one can override any parameters that Hadoop +# would normally put here... so be careful! +# +# Useful functions here include hadoop_add_param and for +# Windows compabitility, hadoop_translate_cygwin_path. +# +# function _example_hadoop_finalize +# { +# # we need a property for our feature +# hadoop_add_param HADOOP_OPTS Dexample.feature "-Dexample.feature=awesome" +# } http://git-wip-us.apache.org/repos/asf/hadoop/blob/667c3fce/hadoop-hdfs-project/hadoop-hdfs/src/main/shellprofile.d/hdfs ---------------------------------------------------------------------- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/shellprofile.d/hdfs b/hadoop-hdfs-project/hadoop-hdfs/src/main/shellprofile.d/hdfs deleted file mode 100644 index 5eb9e48..0000000 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/shellprofile.d/hdfs +++ /dev/null @@ -1,36 +0,0 @@ - -# Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed with -# this work for additional information regarding copyright ownership. -# The ASF licenses this file to You under the Apache License, Version 2.0 -# (the "License"); you may not use this file except in compliance with -# the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -hadoop_add_profile hdfs - -function _hdfs_hadoop_classpath -{ - # - # get all of the hdfs jars+config in the path - # - # developers - if [[ -n "${HADOOP_ENABLE_BUILD_PATHS}" ]]; then - hadoop_add_classpath "${HADOOP_HDFS_HOME}/hadoop-hdfs/target/classes" - fi - - # put hdfs in classpath if present - if [[ -d "${HADOOP_HDFS_HOME}/${HDFS_DIR}/webapps" ]]; then - hadoop_add_classpath "${HADOOP_HDFS_HOME}/${HDFS_DIR}" - fi - - hadoop_add_classpath "${HADOOP_HDFS_HOME}/${HDFS_LIB_JARS_DIR}"'/*' - hadoop_add_classpath "${HADOOP_HDFS_HOME}/${HDFS_DIR}"'/*' -} http://git-wip-us.apache.org/repos/asf/hadoop/blob/667c3fce/hadoop-hdfs-project/hadoop-hdfs/src/main/shellprofile.d/hdfs.sh ---------------------------------------------------------------------- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/shellprofile.d/hdfs.sh b/hadoop-hdfs-project/hadoop-hdfs/src/main/shellprofile.d/hdfs.sh new file mode 100644 index 0000000..5eb9e48 --- /dev/null +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/shellprofile.d/hdfs.sh @@ -0,0 +1,36 @@ + +# Licensed to the Apache Software Foundation (ASF) under one or more +# contributor license agreements. See the NOTICE file distributed with +# this work for additional information regarding copyright ownership. +# The ASF licenses this file to You under the Apache License, Version 2.0 +# (the "License"); you may not use this file except in compliance with +# the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +hadoop_add_profile hdfs + +function _hdfs_hadoop_classpath +{ + # + # get all of the hdfs jars+config in the path + # + # developers + if [[ -n "${HADOOP_ENABLE_BUILD_PATHS}" ]]; then + hadoop_add_classpath "${HADOOP_HDFS_HOME}/hadoop-hdfs/target/classes" + fi + + # put hdfs in classpath if present + if [[ -d "${HADOOP_HDFS_HOME}/${HDFS_DIR}/webapps" ]]; then + hadoop_add_classpath "${HADOOP_HDFS_HOME}/${HDFS_DIR}" + fi + + hadoop_add_classpath "${HADOOP_HDFS_HOME}/${HDFS_LIB_JARS_DIR}"'/*' + hadoop_add_classpath "${HADOOP_HDFS_HOME}/${HDFS_DIR}"'/*' +} http://git-wip-us.apache.org/repos/asf/hadoop/blob/667c3fce/hadoop-mapreduce-project/shellprofile.d/mapreduce ---------------------------------------------------------------------- diff --git a/hadoop-mapreduce-project/shellprofile.d/mapreduce b/hadoop-mapreduce-project/shellprofile.d/mapreduce deleted file mode 100644 index 0b3dab1..0000000 --- a/hadoop-mapreduce-project/shellprofile.d/mapreduce +++ /dev/null @@ -1,41 +0,0 @@ - -# Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed with -# this work for additional information regarding copyright ownership. -# The ASF licenses this file to You under the Apache License, Version 2.0 -# (the "License"); you may not use this file except in compliance with -# the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -hadoop_add_profile mapred - -function _mapred_hadoop_classpath -{ - # - # get all of the mapreduce jars+config in the path - # - # developers - if [[ -n "${HADOOP_ENABLE_BUILD_PATHS}" ]]; then - hadoop_add_classpath "${HADOOP_MAPRED_HOME}/hadoop-mapreduce-client-shuffle/target/classes" - hadoop_add_classpath "${HADOOP_MAPRED_HOME}/hadoop-mapreduce-client-common/target/classes" - hadoop_add_classpath "${HADOOP_MAPRED_HOME}/hadoop-mapreduce-client-hs/target/classes" - hadoop_add_classpath "${HADOOP_MAPRED_HOME}/hadoop-mapreduce-client-hs-plugins/target/classes" - hadoop_add_classpath "${HADOOP_MAPRED_HOME}/hadoop-mapreduce-client-app/target/classes" - hadoop_add_classpath "${HADOOP_MAPRED_HOME}/hadoop-mapreduce-client-jobclient/target/classes" - hadoop_add_classpath "${HADOOP_MAPRED_HOME}/hadoop-mapreduce-client-core/target/classes" - fi - - if [[ -d "${HADOOP_MAPRED_HOME}/${MAPRED_DIR}/webapps" ]]; then - hadoop_add_classpath "${HADOOP_MAPRED_HOME}/${MAPRED_DIR}" - fi - - hadoop_add_classpath "${HADOOP_MAPRED_HOME}/${MAPRED_LIB_JARS_DIR}"'/*' - hadoop_add_classpath "${HADOOP_MAPRED_HOME}/${MAPRED_DIR}"'/*' -} http://git-wip-us.apache.org/repos/asf/hadoop/blob/667c3fce/hadoop-mapreduce-project/shellprofile.d/mapreduce.sh ---------------------------------------------------------------------- diff --git a/hadoop-mapreduce-project/shellprofile.d/mapreduce.sh b/hadoop-mapreduce-project/shellprofile.d/mapreduce.sh new file mode 100644 index 0000000..0b3dab1 --- /dev/null +++ b/hadoop-mapreduce-project/shellprofile.d/mapreduce.sh @@ -0,0 +1,41 @@ + +# Licensed to the Apache Software Foundation (ASF) under one or more +# contributor license agreements. See the NOTICE file distributed with +# this work for additional information regarding copyright ownership. +# The ASF licenses this file to You under the Apache License, Version 2.0 +# (the "License"); you may not use this file except in compliance with +# the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +hadoop_add_profile mapred + +function _mapred_hadoop_classpath +{ + # + # get all of the mapreduce jars+config in the path + # + # developers + if [[ -n "${HADOOP_ENABLE_BUILD_PATHS}" ]]; then + hadoop_add_classpath "${HADOOP_MAPRED_HOME}/hadoop-mapreduce-client-shuffle/target/classes" + hadoop_add_classpath "${HADOOP_MAPRED_HOME}/hadoop-mapreduce-client-common/target/classes" + hadoop_add_classpath "${HADOOP_MAPRED_HOME}/hadoop-mapreduce-client-hs/target/classes" + hadoop_add_classpath "${HADOOP_MAPRED_HOME}/hadoop-mapreduce-client-hs-plugins/target/classes" + hadoop_add_classpath "${HADOOP_MAPRED_HOME}/hadoop-mapreduce-client-app/target/classes" + hadoop_add_classpath "${HADOOP_MAPRED_HOME}/hadoop-mapreduce-client-jobclient/target/classes" + hadoop_add_classpath "${HADOOP_MAPRED_HOME}/hadoop-mapreduce-client-core/target/classes" + fi + + if [[ -d "${HADOOP_MAPRED_HOME}/${MAPRED_DIR}/webapps" ]]; then + hadoop_add_classpath "${HADOOP_MAPRED_HOME}/${MAPRED_DIR}" + fi + + hadoop_add_classpath "${HADOOP_MAPRED_HOME}/${MAPRED_LIB_JARS_DIR}"'/*' + hadoop_add_classpath "${HADOOP_MAPRED_HOME}/${MAPRED_DIR}"'/*' +} http://git-wip-us.apache.org/repos/asf/hadoop/blob/667c3fce/hadoop-yarn-project/hadoop-yarn/shellprofile.d/yarn ---------------------------------------------------------------------- diff --git a/hadoop-yarn-project/hadoop-yarn/shellprofile.d/yarn b/hadoop-yarn-project/hadoop-yarn/shellprofile.d/yarn deleted file mode 100644 index 4aa20b1..0000000 --- a/hadoop-yarn-project/hadoop-yarn/shellprofile.d/yarn +++ /dev/null @@ -1,62 +0,0 @@ - -# Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed with -# this work for additional information regarding copyright ownership. -# The ASF licenses this file to You under the Apache License, Version 2.0 -# (the "License"); you may not use this file except in compliance with -# the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -hadoop_add_profile yarn - -function _yarn_hadoop_classpath -{ - local i - # - # get all of the yarn jars+config in the path - # - # developers - if [[ -n "${HADOOP_ENABLE_BUILD_PATHS}" ]]; then - for i in yarn-api yarn-common yarn-mapreduce yarn-master-worker \ - yarn-server/yarn-server-nodemanager \ - yarn-server/yarn-server-common \ - yarn-server/yarn-server-resourcemanager; do - hadoop_add_classpath "${HADOOP_YARN_HOME}/$i/target/classes" - done - - hadoop_add_classpath "${HADOOP_YARN_HOME}/build/test/classes" - hadoop_add_classpath "${HADOOP_YARN_HOME}/build/tools" - fi - - if [[ -d "${HADOOP_YARN_HOME}/${YARN_DIR}/webapps" ]]; then - hadoop_add_classpath "${HADOOP_YARN_HOME}/${YARN_DIR}" - fi - - hadoop_add_classpath "${HADOOP_YARN_HOME}/${YARN_LIB_JARS_DIR}"'/*' - hadoop_add_classpath "${HADOOP_YARN_HOME}/${YARN_DIR}"'/*' -} - -function _yarn_hadoop_finalize -{ - # Add YARN custom options to comamnd line in case someone actaully - # used these. - # - # Note that we are replacing ' ' with '\ ' so that when we exec - # stuff it works - # - local yld=$HADOOP_LOG_DIR - hadoop_translate_cygwin_path yld - hadoop_add_param HADOOP_OPTS yarn.log.dir "-Dyarn.log.dir=${yld}" - hadoop_add_param HADOOP_OPTS yarn.log.file "-Dyarn.log.file=${HADOOP_LOGFILE}" - local yhd=$HADOOP_YARN_HOME - hadoop_translate_cygwin_path yhd - hadoop_add_param HADOOP_OPTS yarn.home.dir "-Dyarn.home.dir=${yhd}" - hadoop_add_param HADOOP_OPTS yarn.root.logger "-Dyarn.root.logger=${YARN_ROOT_LOGGER:-INFO,console}" -} http://git-wip-us.apache.org/repos/asf/hadoop/blob/667c3fce/hadoop-yarn-project/hadoop-yarn/shellprofile.d/yarn.sh ---------------------------------------------------------------------- diff --git a/hadoop-yarn-project/hadoop-yarn/shellprofile.d/yarn.sh b/hadoop-yarn-project/hadoop-yarn/shellprofile.d/yarn.sh new file mode 100644 index 0000000..4aa20b1 --- /dev/null +++ b/hadoop-yarn-project/hadoop-yarn/shellprofile.d/yarn.sh @@ -0,0 +1,62 @@ + +# Licensed to the Apache Software Foundation (ASF) under one or more +# contributor license agreements. See the NOTICE file distributed with +# this work for additional information regarding copyright ownership. +# The ASF licenses this file to You under the Apache License, Version 2.0 +# (the "License"); you may not use this file except in compliance with +# the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +hadoop_add_profile yarn + +function _yarn_hadoop_classpath +{ + local i + # + # get all of the yarn jars+config in the path + # + # developers + if [[ -n "${HADOOP_ENABLE_BUILD_PATHS}" ]]; then + for i in yarn-api yarn-common yarn-mapreduce yarn-master-worker \ + yarn-server/yarn-server-nodemanager \ + yarn-server/yarn-server-common \ + yarn-server/yarn-server-resourcemanager; do + hadoop_add_classpath "${HADOOP_YARN_HOME}/$i/target/classes" + done + + hadoop_add_classpath "${HADOOP_YARN_HOME}/build/test/classes" + hadoop_add_classpath "${HADOOP_YARN_HOME}/build/tools" + fi + + if [[ -d "${HADOOP_YARN_HOME}/${YARN_DIR}/webapps" ]]; then + hadoop_add_classpath "${HADOOP_YARN_HOME}/${YARN_DIR}" + fi + + hadoop_add_classpath "${HADOOP_YARN_HOME}/${YARN_LIB_JARS_DIR}"'/*' + hadoop_add_classpath "${HADOOP_YARN_HOME}/${YARN_DIR}"'/*' +} + +function _yarn_hadoop_finalize +{ + # Add YARN custom options to comamnd line in case someone actaully + # used these. + # + # Note that we are replacing ' ' with '\ ' so that when we exec + # stuff it works + # + local yld=$HADOOP_LOG_DIR + hadoop_translate_cygwin_path yld + hadoop_add_param HADOOP_OPTS yarn.log.dir "-Dyarn.log.dir=${yld}" + hadoop_add_param HADOOP_OPTS yarn.log.file "-Dyarn.log.file=${HADOOP_LOGFILE}" + local yhd=$HADOOP_YARN_HOME + hadoop_translate_cygwin_path yhd + hadoop_add_param HADOOP_OPTS yarn.home.dir "-Dyarn.home.dir=${yhd}" + hadoop_add_param HADOOP_OPTS yarn.root.logger "-Dyarn.root.logger=${YARN_ROOT_LOGGER:-INFO,console}" +}