Files
pangolin/scripts/ci/deploy-usercenter.sh
T
wangjia f9a87a9993
Deploy Site / deploy-site (push) Successful in 3m42s
ci(site): deploy-site 增补用户中心构建+部署(补 CI 缺口)
用户中心此前无 CI 部署(手动 wrangler),漂移风险。现纳入 site-v* 发版:
- scripts/ci/compile-usercenter.sh:next build → out/,⚠️内置 NEXT_PUBLIC_API_MODE=http
  + NEXT_PUBLIC_API_DOMAINS=https://api.yanmeiai.com(不设默认 mock=假数据,是个坑)
- scripts/ci/deploy-usercenter.sh:wrangler pages deploy → pangolin-usercenter
  (app.yanmeiai.com)
- deploy-site.yml 追加两步,官网+用户中心同一 tag 发,CF token/account 走全局 secret

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013nMthbVEmQquxBRKb9Fj8u
2026-07-07 13:37:31 +08:00

29 lines
1.2 KiB
Bash
Executable File

#!/usr/bin/env bash
# deploy-usercenter.sh — 部署 Next.js 用户中心 (web/usercenter/out/) 到 Cloudflare
# Pages(项目 pangolin-usercenter,自定义域 app.yanmeiai.com)。纯静态导出,全程
# HTTPS,不落 VPS,与节点 :443(sing-box)无冲突。
#
# 需环境变量:
# CLOUDFLARE_API_TOKEN 带 Account > Cloudflare Pages > Edit 权限的 CF token
# CLOUDFLARE_ACCOUNT_ID CF 账户 ID
# 由 compile-usercenter.sh 先产出 web/usercenter/out/;从 repo 根调用。
set -euo pipefail
if [ ! -d web/usercenter/out ]; then
echo "==> deploy-usercenter: web/usercenter/out/ 不存在 — 拒绝部署" >&2
exit 1
fi
if ! find web/usercenter/out -mindepth 1 -print -quit | grep -q .; then
echo "==> deploy-usercenter: web/usercenter/out/ 为空 — 拒绝部署" >&2
exit 1
fi
: "${CLOUDFLARE_API_TOKEN:?deploy-usercenter: CLOUDFLARE_API_TOKEN 未设(需带 Pages:Edit)}"
: "${CLOUDFLARE_ACCOUNT_ID:?deploy-usercenter: CLOUDFLARE_ACCOUNT_ID 未设}"
echo "==> deploy-usercenter: wrangler pages deploy → project pangolin-usercenter (branch main)"
npx --yes wrangler@4 pages deploy web/usercenter/out \
--project-name=pangolin-usercenter --branch=main --commit-dirty=true
echo "==> deploy-usercenter: done"