This is an automated email from the ASF dual-hosted git repository.

chengpan pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/incubator-celeborn.git


The following commit(s) were added to refs/heads/main by this push:
     new dc663699 [CELEBORN-150][BUILD] Reduce binary tarball size by sharing 
jars (#1095)
dc663699 is described below

commit dc66369973c67d0c06250084aff8efb9aad96a4e
Author: Cheng Pan <[email protected]>
AuthorDate: Fri Dec 16 14:30:17 2022 +0800

    [CELEBORN-150][BUILD] Reduce binary tarball size by sharing jars (#1095)
    
    * [CELEBORN-150][BUILD] Reduce binary tarball size by sharing jars
    
    * nit
    
    * nit
    
    * docker
    
    * nit
    
    * cp -R
---
 dev/make-distribution.sh | 16 +++++++++++++---
 docker/Dockerfile        |  3 ++-
 2 files changed, 15 insertions(+), 4 deletions(-)

diff --git a/dev/make-distribution.sh b/dev/make-distribution.sh
index 61a7147e..ef62d0c0 100755
--- a/dev/make-distribution.sh
+++ b/dev/make-distribution.sh
@@ -135,6 +135,7 @@ echo -e "\$ ${BUILD_COMMAND[@]}\n"
 
 # Make directories
 rm -rf "$DIST_DIR"
+mkdir -p "$DIST_DIR/jars"
 mkdir -p "$DIST_DIR/master-jars"
 mkdir -p "$DIST_DIR/worker-jars"
 mkdir -p "$DIST_DIR/spark"
@@ -143,10 +144,19 @@ echo "Celeborn $VERSION$GITREVSTRING" > 
"$DIST_DIR/RELEASE"
 echo "Build flags: $@" >> "$DIST_DIR/RELEASE"
 
 # Copy jars
+## Copy master jars
 cp "$PROJECT_DIR"/master/target/celeborn-master_$SCALA_VERSION-$VERSION.jar 
"$DIST_DIR/master-jars/"
-cp "$PROJECT_DIR"/master/target/scala-$SCALA_VERSION/jars/*.jar 
"$DIST_DIR/master-jars/"
+cp "$PROJECT_DIR"/master/target/scala-$SCALA_VERSION/jars/*.jar 
"$DIST_DIR/jars/"
+for jar in $(ls "$PROJECT_DIR/master/target/scala-$SCALA_VERSION/jars"); do
+  (cd $DIST_DIR/master-jars; ln -snf "../jars/$jar" .)
+done
+## Copy worker jars
 cp "$PROJECT_DIR"/worker/target/celeborn-worker_$SCALA_VERSION-$VERSION.jar 
"$DIST_DIR/worker-jars/"
-cp "$PROJECT_DIR"/worker/target/scala-$SCALA_VERSION/jars/*.jar 
"$DIST_DIR/worker-jars/"
+cp "$PROJECT_DIR"/worker/target/scala-$SCALA_VERSION/jars/*.jar 
"$DIST_DIR/jars/"
+for jar in $(ls "$PROJECT_DIR/worker/target/scala-$SCALA_VERSION/jars"); do
+  (cd $DIST_DIR/worker-jars; ln -snf "../jars/$jar" .)
+done
+## Copy spark client jars
 cp 
"$PROJECT_DIR"/client-spark/spark-$SPARK_MAJOR_VERSION-shaded/target/celeborn-client-spark-${SPARK_MAJOR_VERSION}-shaded_$SCALA_VERSION-$VERSION.jar
 "$DIST_DIR/spark/"
 
 # Copy other things
@@ -161,6 +171,6 @@ cp -r "$PROJECT_DIR/docker/helm" "$DIST_DIR/docker"
 TARDIR_NAME="apache-celeborn-$VERSION-$NAME"
 TARDIR="$PROJECT_DIR/$TARDIR_NAME"
 rm -rf "$TARDIR"
-cp -r "$DIST_DIR" "$TARDIR"
+cp -R "$DIST_DIR" "$TARDIR"
 tar czf "apache-celeborn-$VERSION-$NAME.tgz" -C "$PROJECT_DIR" "$TARDIR_NAME"
 rm -rf "$TARDIR"
diff --git a/docker/Dockerfile b/docker/Dockerfile
index 7ae4d234..f799b8d4 100644
--- a/docker/Dockerfile
+++ b/docker/Dockerfile
@@ -30,6 +30,7 @@ RUN set -ex && \
 COPY bin /opt/celeborn/bin
 COPY sbin /opt/celeborn/sbin
 COPY conf /opt/celeborn/conf
-COPY RELEASE /opt/celeborn/RELEASE
+COPY jars /opt/celeborn/jars
 COPY master-jars /opt/celeborn/master-jars
 COPY worker-jars /opt/celeborn/worker-jars
+COPY RELEASE /opt/celeborn/RELEASE

Reply via email to