新增: viewer 批注展示与分享剥离演讲者备注;优化: resolveColor 迁至 bg 纯函数层
This commit is contained in:
@@ -0,0 +1,44 @@
|
||||
#!/bin/bash
|
||||
# =====================================================================
|
||||
# publish-viewer.sh — u-ppt 查看器一键发布
|
||||
# 流程: 构建 → 全量上传七牛 bucket → 可达性核对 → CDN 缓存刷新
|
||||
# 用法: bash scripts/publish-viewer.sh [--check-only]
|
||||
# 配套技能: publish-uppt-viewer (踩坑记录见技能文档)
|
||||
# =====================================================================
|
||||
set -e
|
||||
|
||||
PROJECT="/e/wk-lab/u-ppt"
|
||||
BUCKET="u-res"
|
||||
CDN="https://img.1216.top"
|
||||
|
||||
cd "$PROJECT"
|
||||
|
||||
if [ "$1" != "--check-only" ]; then
|
||||
echo "== [1/4] 类型检查 + 构建 =="
|
||||
npx vue-tsc -b || { echo "vue-tsc 失败,中止"; exit 1; }
|
||||
npm run build || { echo "构建失败,中止"; exit 1; }
|
||||
cd dist
|
||||
echo "== [2/4] 全量上传 (viewer.html + assets/*) =="
|
||||
qshell rput "$BUCKET" viewer.html viewer.html --overwrite > /dev/null 2>&1 || echo "上传 viewer.html 失败"
|
||||
for f in $(ls assets/); do
|
||||
qshell rput "$BUCKET" "assets/$f" "assets/$f" --overwrite > /dev/null 2>&1 || echo "上传 assets/$f 失败"
|
||||
done
|
||||
else
|
||||
cd dist
|
||||
echo "== check-only: 跳过构建上传 =="
|
||||
fi
|
||||
|
||||
echo "== [3/4] 可达性核对 =="
|
||||
FAIL=0
|
||||
for f in viewer.html $(ls assets/ | sed 's|^|assets/|'); do
|
||||
code=$(curl -s -o /dev/null -w "%{http_code}" "$CDN/$f")
|
||||
if [ "$code" != "200" ]; then echo "FAIL $code $f"; FAIL=1; fi
|
||||
done
|
||||
[ "$FAIL" = "0" ] && echo "ALL-200"
|
||||
|
||||
echo "== [4/4] 刷新 CDN 缓存 =="
|
||||
echo "$CDN/viewer.html" > /tmp/uppt-refresh.txt
|
||||
echo "$CDN/index.html" >> /tmp/uppt-refresh.txt
|
||||
qshell cdnrefresh -i /tmp/uppt-refresh.txt 2>&1 | grep -o "Code: [0-9]*"
|
||||
|
||||
echo "== 完成: $CDN/viewer.html =="
|
||||
Reference in New Issue
Block a user