/tags/release-0.2.0-rc0/bin/hcat
#! | 79 lines | 67 code | 12 blank | 0 comment | 0 complexity | a395979b17ec8b38f9fa9e93a9e5e2c4 MD5 | raw file
Possible License(s): Apache-2.0, BSD-3-Clause, JSON, CPL-1.0
- #!/usr/bin/env bash
- # 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.
- # Resolve our absolute path
- # resolve links - $0 may be a softlink
- this="${BASH_SOURCE-$0}"
- while [ -h "$this" ]; do
- ls=`ls -ld "$this"`
- link=`expr "$ls" : '.*-> \(.*\)$'`
- if expr "$link" : '.*/.*' > /dev/null; then
- this="$link"
- else
- this=`dirname "$this"`/"$link"
- fi
- done
-
- # convert relative path to absolute path
- bin=`dirname "$this"`
- script=`basename "$this"`
- bin=`unset CDPATH; cd "$bin"; pwd`
- this="$bin/$script"
- if [ -e "$bin/../libexec/hcat-config.sh" ]; then
- . "$bin"/../libexec/hcat-config.sh
- else
- . "$bin"/hcat-config.sh
- fi
- # filter debug command line parameter
- debug=false
- for f in $@; do
- if [[ $f = "-secretDebugCmd" ]]; then
- debug=true
- else
- remaining="${remaining} $f"
- fi
- done
- # Find our hcatalog jar
- shopt -s extglob
- HCAT_JAR=$HCAT_PREFIX/share/hcatalog/hcatalog-!(*server-extensions*).jar
- # Add all of the other jars to our classpath
- for jar in $HCAT_PREFIX/share/hcatalog/lib/*.jar ; do
- HADOOP_CLASSPATH=$HADOOP_CLASSPATH:$jar
- done
- # Put our config file in the classpath
- HADOOP_CLASSPATH=${HADOOP_CLASSPATH}:${HCAT_PREFIX}/etc/hcatalog
- export HADOOP_CLASSPATH=$HADOOP_CLASSPATH
- export HADOOP_OPTS=$HADOOP_OPTS
- # run it
- if [ "$debug" == "true" ]; then
- echo "Would run:"
- echo "exec $HADOOP_PREFIX/bin/hadoop jar $HCAT_JAR org.apache.hcatalog.cli.HCatCli $remaining"
- echo "with HADOOP_CLASSPATH set to ($HADOOP_CLASSPATH)"
- echo "and HADOOP_OPTS set to ($HADOOP_OPTS)"
- else
- exec $HADOOP_PREFIX/bin/hadoop jar $HCAT_JAR org.apache.hcatalog.cli.HCatCli "$@"
- fi