From 34981c30a78e8bbd7791131059a9210f9928b62c Mon Sep 17 00:00:00 2001
From: 刘光辉 <347230014@qq.com>
Date: 星期四, 17 九月 2026 09:24:09 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master' into master

---
 docker/frontend/sync-dist.sh |   61 ++++++++++++++++++++++++++++++
 1 files changed, 61 insertions(+), 0 deletions(-)

diff --git a/docker/frontend/sync-dist.sh b/docker/frontend/sync-dist.sh
new file mode 100644
index 0000000..6ef8c73
--- /dev/null
+++ b/docker/frontend/sync-dist.sh
@@ -0,0 +1,61 @@
+#!/usr/bin/env bash
+# 鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�
+# 鍓嶇 dist 鐢熶骇閾撅紙make web-dist 鐨勫疄鐜颁綋锛夛細
+#   鍓嶇浠撳簱 pnpm build:main 鈫� 浜х墿蹇収鍒版湰鐩綍 dist/锛圖ocker build context锛屼笉鍏� git锛�
+#
+# 涓� flow-engine 鐨� prepare-context.sh 鍚屾瀯锛氫骇鐗╁揩鐓ц繘閮ㄧ讲浠撳簱鏋勫缓锛岄暅鍍忔函婧�
+# 闈� dist/.build-info锛堝墠绔� git sha/鍒嗘敮/dirty/鏋勫缓鏃堕棿锛夈��
+#
+# 鐢ㄦ硶锛�
+#   ./sync-dist.sh                 # 鏋勫缓 + 鎷疯礉锛堥粯璁わ級
+#   SKIP_BUILD=1 ./sync-dist.sh    # 鍙嫹鐜版湁 dist锛堝墠绔垰鎵嬪伐鏋勫缓杩囨椂鐨勫揩鎹疯矾寰勶級
+#   FRONTEND_REPO=/path ./sync-dist.sh   # 鍓嶇浠撳簱涓嶅湪榛樿浣嶇疆鏃舵樉寮忔寚瀹�
+#
+# 鍓嶇疆锛歯ode >= 20.19銆乸npm >= 9.12锛堝墠绔粨搴� engines 瑕佹眰锛夛紱鏋勫缓鍚� 8GB 鍫�
+#锛圢ODE_OPTIONS 宸插湪鍓嶇浠撳簱 build script 鍐呰缃級銆�
+# 鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�
+set -euo pipefail
+
+SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
+REPO_ROOT="$(cd "$SCRIPT_DIR/../.." && pwd)"
+
+FRONTEND_REPO="${FRONTEND_REPO:-$REPO_ROOT/../jnpf-web-monorepo-framework-v6.1}"
+APP_DIST="$FRONTEND_REPO/apps/jnpf-web-apps-main/dist"
+
+log()  { printf '\033[1;32m[web-dist]\033[0m %s\n' "$*"; }
+die()  { printf '\033[1;31m[web-dist][err]\033[0m %s\n' "$*" >&2; exit 1; }
+
+[ -d "$FRONTEND_REPO" ] || die "鍓嶇浠撳簱涓嶅瓨鍦細${FRONTEND_REPO}锛堢敤 FRONTEND_REPO=/path 鎸囧畾锛�"
+
+if [ "${SKIP_BUILD:-0}" = "1" ]; then
+  log "SKIP_BUILD=1锛氳烦杩囨瀯寤猴紝鐩存帴鎷疯礉鐜版湁 dist"
+else
+  command -v pnpm >/dev/null || die "鏈壘鍒� pnpm锛堝墠绔瀯寤洪渶瑕� pnpm >= 9.12锛�"
+  log "pnpm build:main锛堝墠绔粨搴� ${FRONTEND_REPO}锛岀害闇�鏁板垎閽熴��8GB 鍫嗭級鈥�"
+  ( cd "$FRONTEND_REPO" && pnpm build:main )
+fi
+
+# 浜х墿瀹屾暣鎬э細index.html=鍏ュ彛锛沖app.config.js=杩愯鏃堕厤缃敞鍏ョ偣锛堢己=鏋勫缓閾惧彉鍖栵紝蹇呴』浜哄伐纭锛�
+[ -f "$APP_DIST/index.html" ]     || die "鏋勫缓浜х墿缂� index.html锛�${APP_DIST}"
+[ -f "$APP_DIST/_app.config.js" ] || die "鏋勫缓浜х墿缂� _app.config.js锛堣繍琛屾椂閰嶇疆娉ㄥ叆鐐癸級锛�${APP_DIST}"
+
+# 鍏堟竻鍚庢嫹锛氶槻鏃� hash 鏂囦欢鍦� context 閲屾棤闄愬爢绉�
+DEST="$SCRIPT_DIR/dist"
+rm -rf "$DEST"
+cp -R "$APP_DIST" "$DEST"
+
+# 婧簮淇℃伅锛氭湰鍦版瀯寤洪暅鍍忔棤 RepoDigest锛岄潬瀹冨搴斿洖鍓嶇浠撳簱 commit
+FE_SHA="$(git -C "$FRONTEND_REPO" rev-parse --short HEAD 2>/dev/null || echo unknown)"
+FE_BRANCH="$(git -C "$FRONTEND_REPO" rev-parse --abbrev-ref HEAD 2>/dev/null || echo unknown)"
+FE_DIRTY=""
+[ -n "$(git -C "$FRONTEND_REPO" status --porcelain 2>/dev/null)" ] && FE_DIRTY="-dirty"
+cat > "$DEST/.build-info" <<EOF
+frontend_repo=${FRONTEND_REPO}
+frontend_git=${FE_BRANCH}@${FE_SHA}${FE_DIRTY}
+built_at=$(date '+%Y-%m-%d %H:%M:%S %z')
+EOF
+
+log "dist 灏辩华锛�${DEST}锛�$(du -sh "$DEST" | cut -f1)锛屽墠绔� ${FE_BRANCH}@${FE_SHA}${FE_DIRTY}锛�"
+[ -n "$FE_DIRTY" ] && printf '\033[1;33m[web-dist][warn]\033[0m %s\n' \
+  "鍓嶇浠撳簱鏈夋湭鎻愪氦鏀瑰姩鈥斺�旀寮忎氦浠樺墠璇峰厛鍦ㄥ墠绔粨搴撴彁浜わ紝淇濊瘉闀滃儚鍙函婧�"
+exit 0

--
Gitblit v1.8.0