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

kunni pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/flink-cdc.git


The following commit(s) were added to refs/heads/master by this push:
     new e663b0091 [build] Add update_version.sh to help build connector jars 
with FLINK_VERSION suffix version. (#4325)
e663b0091 is described below

commit e663b00912737bd98003dfaf071999be6b5010ad
Author: Kunni <[email protected]>
AuthorDate: Fri Mar 20 22:28:42 2026 +0800

    [build] Add update_version.sh to help build connector jars with 
FLINK_VERSION suffix version. (#4325)
---
 tools/releasing/deploy_staging_jars.sh             | 48 +++++++++++++++++++++-
 .../deploy_staging_jars.sh => update_version.sh}   | 46 ++++++++++++++++++---
 2 files changed, 88 insertions(+), 6 deletions(-)

diff --git a/tools/releasing/deploy_staging_jars.sh 
b/tools/releasing/deploy_staging_jars.sh
index 93d2da20f..b187aa350 100755
--- a/tools/releasing/deploy_staging_jars.sh
+++ b/tools/releasing/deploy_staging_jars.sh
@@ -39,9 +39,55 @@ fi
 
 ###########################
 
+function get_pom_version {
+  set +u
+  echo $(${MVN} help:evaluate -Dexpression="project.version" -q -DforceStdout)
+  set -u
+}
+
+function set_pom_version {
+  new_version=$1
+
+  ${MVN} org.codehaus.mojo:versions-maven-plugin:2.8.1:set 
-DnewVersion=${new_version} -DgenerateBackupPoms=false --quiet
+}
+
+###########################
+
 cd ${PROJECT_ROOT}
 
+# Build Maven options
+MVN_OPTIONS="-Papache-release -DskipTests -DretryFailedDeploymentCount=10"
+
+# If FLINK_VERSION is set, pass it to Maven
+if [ -n "${FLINK_VERSION:-}" ]; then
+    echo "Using Flink version: ${FLINK_VERSION}"
+
+    # Extract and set flink.major.version (e.g., "1.20" from "1.20.3")
+    flink_major_version=$(echo "${FLINK_VERSION}" | cut -d. -f1,2)
+    MVN_OPTIONS="${MVN_OPTIONS} -Dflink.major.version=${flink_major_version}"
+
+    # Update project version: base_version-FLINK_VERSION
+    current_version=$(get_pom_version)
+    echo "Current version: ${current_version}"
+
+    # Skip if version already ends with FLINK_VERSION
+    if [[ "${current_version}" == *"-${FLINK_VERSION}" ]]; then
+        echo "Version already ends with -${FLINK_VERSION}, skipping version 
update"
+    else
+        base_version=${current_version%-SNAPSHOT}
+        new_version="${base_version}-${FLINK_VERSION}"
+        echo "Updating version to: ${new_version}"
+        set_pom_version "${new_version}"
+    fi
+
+    # Add -Pflink2 profile if FLINK_VERSION starts with "2"
+    if [[ "${FLINK_VERSION}" == 2* ]]; then
+        echo "Enabling flink2 profile"
+        MVN_OPTIONS="${MVN_OPTIONS} -Pflink2"
+    fi
+fi
+
 echo "Deploying to repository.apache.org"
-${MVN} clean deploy -Papache-release -DskipTests 
-DretryFailedDeploymentCount=10 $CUSTOM_OPTIONS
+${MVN} clean deploy ${MVN_OPTIONS} ${CUSTOM_OPTIONS}
 
 cd ${CURR_DIR}
\ No newline at end of file
diff --git a/tools/releasing/deploy_staging_jars.sh b/tools/update_version.sh
similarity index 54%
copy from tools/releasing/deploy_staging_jars.sh
copy to tools/update_version.sh
index 93d2da20f..5741f7751 100755
--- a/tools/releasing/deploy_staging_jars.sh
+++ b/tools/update_version.sh
@@ -21,7 +21,6 @@
 ## Variables with defaults (if not overwritten by environment)
 ##
 MVN=${MVN:-mvn}
-CUSTOM_OPTIONS=${CUSTOM_OPTIONS:-}
 
 # fail immediately
 set -o errexit
@@ -29,7 +28,7 @@ set -o nounset
 
 CURR_DIR=`pwd`
 BASE_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null && pwd )"
-PROJECT_ROOT="${BASE_DIR}/../../"
+PROJECT_ROOT="${BASE_DIR}/../"
 
 # Sanity check to ensure that resolved paths are valid; a LICENSE file should 
always exist in project root
 if [ ! -f ${PROJECT_ROOT}/LICENSE ]; then
@@ -39,9 +38,46 @@ fi
 
 ###########################
 
+function get_pom_version {
+  set +u
+  echo $(${MVN} help:evaluate -Dexpression="project.version" -q -DforceStdout)
+  set -u
+}
+
+function set_pom_version {
+  new_version=$1
+
+  ${MVN} org.codehaus.mojo:versions-maven-plugin:2.8.1:set 
-DnewVersion=${new_version} -DgenerateBackupPoms=false --quiet
+}
+
+###########################
+
 cd ${PROJECT_ROOT}
 
-echo "Deploying to repository.apache.org"
-${MVN} clean deploy -Papache-release -DskipTests 
-DretryFailedDeploymentCount=10 $CUSTOM_OPTIONS
+# Check if FLINK_VERSION is set
+if [ -z "${FLINK_VERSION:-}" ]; then
+    echo "Error: FLINK_VERSION environment variable is not set."
+    echo "Usage: FLINK_VERSION=1.20 $0"
+    exit 1
+fi
+
+echo "FLINK_VERSION: ${FLINK_VERSION}"
+
+# Get current version
+current_version=$(get_pom_version)
+echo "Current version: ${current_version}"
+
+# Extract base version (remove -SNAPSHOT suffix if present)
+base_version=${current_version%-SNAPSHOT}
+echo "Base version: ${base_version}"
+
+# Build new version: base_version-FLINK_VERSION
+new_version="${base_version}-${FLINK_VERSION}"
+echo "New version: ${new_version}"
+
+# Set new version
+set_pom_version "${new_version}"
+
+echo "Version updated successfully: ${current_version} -> ${new_version}"
 
-cd ${CURR_DIR}
\ No newline at end of file
+cd ${CURR_DIR}

Reply via email to