blob: 96b5427beab151c55c4179c8fc46f107f6b425c6 [file] [log] [blame]
#!/bin/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.
# This script must be sourced so that it can set CATALINA_BASE for the parent process
TOMCAT_CONF=${TOMCAT_CONF:-`readlink -e /etc/sqoop2/tomcat-conf`}
TOMCAT_DEPLOYMENT=${TOMCAT_DEPLOYMENT:-/var/lib/sqoop2/tomcat-deployment}
SQOOP2_HOME=${SQOOP2_HOME:-/usr/lib/sqoop2}
function copy_and_resolve() {
source_dir=${1}
target_dir=${2}
# Some directories contain both configuration and binaries, so we have to copy the contents individually
mkdir -p ${target_dir}
cp -r ${source_dir}/* ${target_dir}
for source_symlink in `find ${source_dir} -type l`; do
# This is relative to the source specifically, so that relative symlinks are consistent
symlink_location=${source_symlink/${source_dir}/}
symlink_target=`readlink -e ${source_symlink}`
if [ -n "${symlink_target}" ]; then
rm -f ${target_dir}${symlink_location}
cp -r ${symlink_target} ${target_dir}${symlink_location}
fi
done
}
rm -rf ${TOMCAT_DEPLOYMENT}
mkdir ${TOMCAT_DEPLOYMENT}
copy_and_resolve ${TOMCAT_CONF}/conf ${TOMCAT_DEPLOYMENT}/conf
copy_and_resolve ${SQOOP2_HOME}/webapps ${TOMCAT_DEPLOYMENT}/webapps
copy_and_resolve ${TOMCAT_CONF}/WEB-INF ${TOMCAT_DEPLOYMENT}/webapps/sqoop/WEB-INF
copy_and_resolve ${SQOOP2_HOME}/bin ${TOMCAT_DEPLOYMENT}/bin
export CATALINA_BASE=${TOMCAT_DEPLOYMENT}
if [ -n "${BIGTOP_CLASSPATH}" ] ; then
sed -i -e "s#^\(common.loader=.*\)\$#\1,${BIGTOP_CLASSPATH/:/,}#" ${TOMCAT_DEPLOYMENT}/conf/catalina.properties
fi
chown -R sqoop2:sqoop ${TOMCAT_DEPLOYMENT}
export CATALINA_BASE=${TOMCAT_DEPLOYMENT}