合并 origin/main 设备注册后,纳入本地 music 模块、seed 命令与 popadmin 相关路由/文档;music migration 编号为 0020 以避免与 0019_devices 冲突。 Co-authored-by: Cursor <cursoragent@cursor.com>
42 lines
1.7 KiB
Markdown
42 lines
1.7 KiB
Markdown
# 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 枚举。
|