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

yihua pushed a commit to branch release-1.1.0
in repository https://gitbox.apache.org/repos/asf/hudi.git

commit 719de6a4981479f51ce984ae9bdd05304849ff99
Author: Y Ethan Guo <[email protected]>
AuthorDate: Fri Oct 3 23:33:24 2025 -0700

    chore: Add jar deploy script for Spark 4.0 and Java 17
---
 scripts/release/deploy_staging_jars_java17.sh | 85 +++++++++++++++++++++++++++
 1 file changed, 85 insertions(+)

diff --git a/scripts/release/deploy_staging_jars_java17.sh 
b/scripts/release/deploy_staging_jars_java17.sh
new file mode 100755
index 000000000000..02cd8984e9d1
--- /dev/null
+++ b/scripts/release/deploy_staging_jars_java17.sh
@@ -0,0 +1,85 @@
+#!/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.
+#
+
+##
+## Variables with defaults (if not overwritten by environment)
+##
+MVN=${MVN:-mvn}
+# fail immediately
+set -o errexit
+set -o nounset
+
+CURR_DIR=$(pwd)
+if [ ! -d "$CURR_DIR/packaging" ] ; then
+  echo "You have to call the script from the repository root dir that contains 
'packaging/'"
+  exit 1
+fi
+
+if [ "$#" -gt "1" ]; then
+  echo "Only accept 0 or 1 argument. Use -h to see examples."
+  exit 1
+fi
+
+declare -a ALL_VERSION_OPTS=(
+# For Spark 4.0, Scala 2.13:
+# hudi-spark4-common
+# hudi-spark4.0.x_2.13
+# hudi-spark4.0-bundle_2.13
+"-Djava17 -Djava.version=17 -Dscala-2.13 -Dspark4.0 -pl 
hudi-spark-datasource/hudi-spark4-common,hudi-spark-datasource/hudi-spark4.0.x,packaging/hudi-spark-bundle
 -am"
+)
+printf -v joined "'%s'\n" "${ALL_VERSION_OPTS[@]}"
+
+if [ "${1:-}" == "-h" ]; then
+  echo "
+Usage: $(basename "$0") [OPTIONS]
+
+Options:
+<version option>  One of the version options below
+${joined}
+-h, --help
+"
+  exit 0
+fi
+
+VERSION_OPT=${1:-}
+valid_version_opt=false
+for v in "${ALL_VERSION_OPTS[@]}"; do
+    [[ $VERSION_OPT == "$v" ]] && valid_version_opt=true
+done
+
+if [ "$valid_version_opt" = true ]; then
+  # run deploy for only specified version option
+  ALL_VERSION_OPTS=("$VERSION_OPT")
+elif [ "$#" == "1" ]; then
+  echo "Version option $VERSION_OPT is invalid. Use -h to see examples."
+  exit 1
+fi
+
+COMMON_OPTIONS="-DdeployArtifacts=true -DskipTests 
-DretryFailedDeploymentCount=10"
+for v in "${ALL_VERSION_OPTS[@]}"
+do
+  echo "Cleaning everything before any deployment"
+  $MVN clean $COMMON_OPTIONS ${v}
+  echo "Building with options ${v}"
+  $MVN install $COMMON_OPTIONS ${v}
+
+  echo "Deploying to repository.apache.org with version options ${v%-am}"
+  # remove `-am` option to only deploy intended modules
+  $MVN deploy $COMMON_OPTIONS ${v%-am}
+done

Reply via email to