spark-server/docs/popadmin-music-novels-deploy.md
DESKTOP-L8OUL9F\gfl0034 ce2cdf6bf3 feat: music 运营曲目、seed 机器人欢迎消息,并补充 novels/music OpenAPI
合并 origin/main 设备注册后,纳入本地 music 模块、seed 命令与 popadmin 相关路由/文档;music migration 编号为 0020 以避免与 0019_devices 冲突。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-23 16:07:05 +08:00

42 lines
1.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# popadmin 音乐 / 小说 & sparkapi `/docs` 部署要点
## 1. spark-server(音乐 API + OpenAPI)
```bash
# 新加坡机
cd /opt/spark-server # 或实际路径
# 拉代码后
./cmd/migrate # 或项目惯用 migrate,执行 migrations/0020_music.sql
# 重启 spark-server 进程 / docker compose
sudo nginx -t && sudo nginx -s reload
# 确认 include 了更新后的 popadmin-spark-admin-locations.conf(含 music)
```
验证:
- `GET https://sparkapi.wyrs365.com/v1/music/playlist` → `code=0`
- `GET https://sparkapi.wyrs365.com/docs` → 可见 music / admin-music / novels / admin-novels / 登录设备 Breaking 说明
- popadmin 登录后「音乐列表」:`GET/POST /api/admin/spark/music`
## 2. Aliyun wyrs-admin(popadmin 静态)
热更或发版 `static/popadmin/js/popadmin.js`(侧栏「音乐列表」「小说内容管理」)。
新加坡若用 static-override,同步覆盖:
`/opt/wyrs-admin/static-override/popadmin.js`(或等价路径)并 bump `?v=`。
## 3. FullStoryNovel CMS(小说 iframe)
- 部署 `static/admin/admin.js`(`embed=1&from=popadmin` + postMessage SSO)
- 部署 nginx:去掉 `X-Frame-Options SAMEORIGIN`,改为
`Content-Security-Policy: frame-ancestors 'self' https://popadmin.wyrs365.com`
- 确认 `fullstorynovel.service` :8095 与 `adopt-ops-session` 可用
验证:popadmin →「小说内容管理」iframe 加载 novels;或新窗口打开 `https://admin.fullstorynovel.com/admin/`。
## 4. 设备登录文档(devices-client)
OpenAPI 已按 `Spark资源文档/devices-client.md` 更新契约。
**当前 Go 实现仍为旧登录**(Body 必填客户端 `device_id`、字符串 `device_type`,JWT 无 `aid`)。上线新契约前需改 auth/login、JWT、meta 枚举。