This is an automated email from the ASF dual-hosted git repository.
laiyingchun pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-pegasus.git
The following commit(s) were added to refs/heads/master by this push:
new 013dd83 chore: add config_hdfs.sh (#658)
013dd83 is described below
commit 013dd83ab6a455b6f90944f8fac4167a27b091cb
Author: Zhang Yifan <[email protected]>
AuthorDate: Thu Dec 24 23:44:45 2020 +0800
chore: add config_hdfs.sh (#658)
---
config_hdfs.sh | 61 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
scripts/travis.sh | 3 +--
2 files changed, 62 insertions(+), 2 deletions(-)
diff --git a/config_hdfs.sh b/config_hdfs.sh
new file mode 100755
index 0000000..32dc80f
--- /dev/null
+++ b/config_hdfs.sh
@@ -0,0 +1,61 @@
+#!/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 file should be sourced to set up LD_LIBRARY_PATH and CLASSPATH to
+# run Pegasus binaries which use libhdfs in the context of a dev environment.
+
+# Try to detect the system's JAVA_HOME
+# If javac exists, then the system has a Java SDK (JRE does not have javac).
+# Follow the symbolic links and use this to determine the system's JAVA_HOME.
+SYSTEM_JAVA_HOME="/usr/java/default"
+if [ -n "$(which javac)" ]; then
+ SYSTEM_JAVA_HOME=$(which javac | xargs readlink -f | sed "s:/bin/javac::")
+fi
+# Prefer the JAVA_HOME set in the environment, but use the system's JAVA_HOME
otherwise.
+export JAVA_HOME="${JAVA_HOME:-${SYSTEM_JAVA_HOME}}"
+if [ ! -d "$JAVA_HOME" ]; then
+ echo "JAVA_HOME must be set to the location of your JDK!"
+ return 1
+fi
+# Link jvm library.
+JAVA_JVM_LIBRARY_DIR=$(dirname $(find "${JAVA_HOME}/" -name libjvm.so | head
-1))
+export LD_LIBRARY_PATH=${JAVA_JVM_LIBRARY_DIR}:$LD_LIBRARY_PATH
+
+# Set CLASSPATH to all the Hadoop jars needed to run Hadoop itself as well as
+# the right configuration directory containing core-site.xml or hdfs-site.xml.
+PEGASUS_HADOOP_HOME=`pwd`/rdsn/thirdparty/build/Source/hadoop
+# Prefer the HADOOP_HOME set in the environment, but use the pegasus's hadoop
dir otherwise.
+export HADOOP_HOME="${HADOOP_HOME:-${PEGASUS_HADOOP_HOME}}"
+if [ ! -d "$HADOOP_HOME/etc/hadoop" ] || [ ! -d "$HADOOP_HOME/share/hadoop" ];
then
+ echo "HADOOP_HOME must be set to the location of your Hadoop jars and
core-site.xml."
+ return 1
+fi
+export CLASSPATH=$CLASSPATH:$HADOOP_HOME/etc/hadoop/
+for f in $HADOOP_HOME/share/hadoop/common/lib/*.jar; do
+ export CLASSPATH=$CLASSPATH:$f
+done
+for f in $HADOOP_HOME/share/hadoop/common/*.jar; do
+ export CLASSPATH=$CLASSPATH:$f
+done
+for f in $HADOOP_HOME/share/hadoop/hdfs/lib/*.jar; do
+ export CLASSPATH=$CLASSPATH:$f
+done
+for f in $HADOOP_HOME/share/hadoop/hdfs/*.jar; do
+ export CLASSPATH=$CLASSPATH:$f
+done
diff --git a/scripts/travis.sh b/scripts/travis.sh
index 557ce1d..5b85172 100755
--- a/scripts/travis.sh
+++ b/scripts/travis.sh
@@ -32,8 +32,7 @@ if [ "$modified" ]; then
exit 1
fi
-export LD_LIBRARY_PATH=/usr/local/lib/jvm/openjdk11/lib/server:$LD_LIBRARY_PATH
-
+source "${root}"/config_hdfs.sh
"${root}"/run.sh build -c --skip_thirdparty --disable_gperf && ./run.sh test
--on_travis
ret=$?
if [ $ret ]; then
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]