| #!/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. |
| |
| set -ex |
| |
| . `dirname $0`/bigtop.bom |
| |
| ./dev/change_scala_version.sh ${SCALA_VERSION%.*} |
| |
| BUILD_OPTS="-Dscala.version=${SCALA_VERSION} \ |
| -Dscala.binary.version=${SCALA_VERSION%.*} \ |
| -Dscala.macros.version=2.1.0 \ |
| -Dspark.version=${SPARK_VERSION} \ |
| -Dhadoop.version=${HADOOP_VERSION} \ |
| -Dhbase.hbase.version=${HBASE_VERSION} \ |
| -Dhbase.hadoop.version=${HADOOP_VERSION} \ |
| -Dignite.version=${IGNITE_HADOOP_VERSION} \ |
| -Dflink.version=${FLINK_VERSION} \ |
| -Pspark-${SPARK_VERSION%.*} \ |
| -Pscala-${SCALA_VERSION%.*} \ |
| -Pr \ |
| -Pbuild-distr" |
| |
| if [ "$ZEPPELIN_RUN_TESTS" = "true" ]; then |
| BUILD_OPTS="$BUILD_OPTS -DskipTests=false" |
| else |
| BUILD_OPTS="$BUILD_OPTS -DskipTests" |
| fi |
| |
| export MAVEN_OPTS="-Xmx1500m -Xms1500m" |
| |
| # BIGTOP-2742: |
| # The default zeppelin PIDFILE includes the literal $(hostname) string, which is carried into the init script's pidfile declaration. |
| # But pidfile does not subshell out to generate the expected string. |
| # The zeppelin process does indeed start up, but systemctl reports a failure because it's looking for a non-existent pidfile. |
| # |
| # Workaround: |
| # Remove unnecessary $HOSTNAME from zeppelin-daemon.sh and also make the same adjustment to zeppelin.svc. |
| # TODO: |
| # Request the issue to zeppelin upstream, If accepted, remove this workaround. |
| sed -i "s/^.*ZEPPELIN_PID=.*$/ZEPPELIN_PID=\"\$\{ZEPPELIN_PID_DIR\}\/zeppelin\-\$\{ZEPPELIN_IDENT_STRING\}\.pid\"/" bin/zeppelin-daemon.sh |
| |
| mvn $BUILD_OPTS clean package |
| |
| mkdir -p build/dist |
| tar -C build/dist --strip-components=1 -xzf zeppelin-distribution/target/zeppelin-*.tar.gz |