This is an automated email from the ASF dual-hosted git repository.
zhangliang pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/shardingsphere.git
The following commit(s) were added to refs/heads/master by this push:
new c019cde926f Fix nightly uploads: normalize rsync SSH key (escaped
newlines/base64) (#37538)
c019cde926f is described below
commit c019cde926f0e6e97d992fd778f73594ab98e624
Author: Liang Zhang <[email protected]>
AuthorDate: Fri Dec 26 16:18:28 2025 +0800
Fix nightly uploads: normalize rsync SSH key (escaped newlines/base64)
(#37538)
---
.github/workflows/nightly-build.yml | 26 ++++++++++++++++++++++++--
1 file changed, 24 insertions(+), 2 deletions(-)
diff --git a/.github/workflows/nightly-build.yml
b/.github/workflows/nightly-build.yml
index e67bf6798ad..beac0944692 100644
--- a/.github/workflows/nightly-build.yml
+++ b/.github/workflows/nightly-build.yml
@@ -76,9 +76,20 @@ jobs:
exit 1
fi
done
+ RAW_KEY="${NIGHTLIES_RSYNC_KEY}"
+ if printf '%s' "${RAW_KEY}" | grep -q '\\n'; then
+ RAW_KEY=$(printf '%s' "${RAW_KEY}" | sed 's/\\n/\n/g')
+ fi
+ KEY_CONTENT="${RAW_KEY}"
+ if ! printf '%s' "${KEY_CONTENT}" | grep -q '-----BEGIN '; then
+ DECODED_KEY=$(printf '%s' "${KEY_CONTENT}" | base64 -d 2>/dev/null
|| true)
+ if [ -n "${DECODED_KEY}" ]; then
+ KEY_CONTENT="${DECODED_KEY}"
+ fi
+ fi
KEY_FILE=$(mktemp)
trap 'rm -f ${KEY_FILE}' EXIT
- printf '%s' "${NIGHTLIES_RSYNC_KEY}" > "${KEY_FILE}"
+ printf '%s' "${KEY_CONTENT}" > "${KEY_FILE}"
chmod 600 "${KEY_FILE}"
SSH_OPTS="-i ${KEY_FILE} -o StrictHostKeyChecking=no"
if [ -n "${NIGHTLIES_RSYNC_PORT}" ]; then
@@ -300,9 +311,20 @@ jobs:
exit 1
fi
done
+ RAW_KEY="${NIGHTLIES_RSYNC_KEY}"
+ if printf '%s' "${RAW_KEY}" | grep -q '\\n'; then
+ RAW_KEY=$(printf '%s' "${RAW_KEY}" | sed 's/\\n/\n/g')
+ fi
+ KEY_CONTENT="${RAW_KEY}"
+ if ! printf '%s' "${KEY_CONTENT}" | grep -q '-----BEGIN '; then
+ DECODED_KEY=$(printf '%s' "${KEY_CONTENT}" | base64 -d 2>/dev/null
|| true)
+ if [ -n "${DECODED_KEY}" ]; then
+ KEY_CONTENT="${DECODED_KEY}"
+ fi
+ fi
KEY_FILE=$(mktemp)
trap 'rm -f ${KEY_FILE}' EXIT
- printf '%s' "${NIGHTLIES_RSYNC_KEY}" > "${KEY_FILE}"
+ printf '%s' "${KEY_CONTENT}" > "${KEY_FILE}"
chmod 600 "${KEY_FILE}"
SSH_OPTS="-i ${KEY_FILE} -o StrictHostKeyChecking=no"
if [ -n "${NIGHTLIES_RSYNC_PORT}" ]; then