From d5d3fa16412ef2373dc59061399205516eea7b1c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=8E=86=E5=86=B0=E9=83=81-hermes=E7=89=88?= Date: Thu, 7 May 2026 14:57:51 +0800 Subject: [PATCH] ci: fix server provision shell quoting --- jenkins/Jenkinsfile.production-server-provision | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/jenkins/Jenkinsfile.production-server-provision b/jenkins/Jenkinsfile.production-server-provision index 4936e01d..7ccd9b4b 100644 --- a/jenkins/Jenkinsfile.production-server-provision +++ b/jenkins/Jenkinsfile.production-server-provision @@ -287,7 +287,8 @@ BASH read_env_value() { local file="$1" local key="$2" - local line value + local line value quote_char + quote_char='"' if [[ ! -f "${file}" ]]; then return @@ -296,10 +297,9 @@ BASH while IFS= read -r line || [[ -n "${line}" ]]; do if [[ "${line}" == "${key}="* ]]; then value="${line#*=}" - value="$(printf "%s" "${value}" | tr -d "\\r")" - if [[ "${value}" == \"* && "${value}" == *\" ]]; then - value="${value#\"}" - value="${value%\"}" + value="$(printf "%s" "${value}" | tr -d "\r")" + if [[ ${#value} -ge 2 && "${value:0:1}" == "${quote_char}" && "${value: -1}" == "${quote_char}" ]]; then + value="${value:1:${#value}-2}" fi printf "%s" "${value}" return