fix: copy jenkins web deploy artifact recursively
Some checks failed
CI / verify (push) Has been cancelled

This commit is contained in:
2026-04-27 09:38:57 +08:00
parent 3c3f5ad22b
commit 5eb3c7abfb
3 changed files with 13 additions and 7 deletions

View File

@@ -9,8 +9,8 @@ usage() {
说明:
1. 如果部署目录已有旧版本且存在 stop.sh则先执行旧版本 stop.sh。
2. 仅删除并替换发布产物文件,保留部署目录中的运行数据目录。
3. 把指定发布目录中的内容覆盖到部署目录。
2. 仅删除并替换发布产物文件或目录,保留部署目录中的运行数据目录。
3. 把指定发布目录中的白名单产物复制覆盖到部署目录。
4. 如指定 --clear-database则以清库模式执行新版本 start.sh。
5. 最后执行新版本 start.sh。
@@ -219,11 +219,17 @@ for item in "${DEPLOY_ITEMS[@]}"; do
fi
done
echo "[jenkins-deploy] 移动发布内容: ${SOURCE_DIR} -> ${DEPLOY_DIR}"
echo "[jenkins-deploy] 复制发布内容: ${SOURCE_DIR} -> ${DEPLOY_DIR}"
for item in "${DEPLOY_ITEMS[@]}"; do
if [[ -e "${SOURCE_DIR}/${item}" ]]; then
source_item="${SOURCE_DIR}/${item}"
if [[ -e "${source_item}" ]]; then
echo "[jenkins-deploy] 覆盖产物: ${item}"
cp "${SOURCE_DIR}/${item}" "${DEPLOY_DIR}/"
# web 是目录产物,必须递归复制;文件产物保持普通复制,避免误扩大复制语义。
if [[ -d "${source_item}" ]]; then
cp -R "${source_item}" "${DEPLOY_DIR}/"
else
cp "${source_item}" "${DEPLOY_DIR}/"
fi
fi
done