116 lines
3.0 KiB
Markdown
116 lines
3.0 KiB
Markdown
# 配置发布说明
|
||
|
||
本文档说明当前项目如何把 `event/*.json` 样例配置同步到服务器。
|
||
|
||
注意:
|
||
|
||
- 这里描述的是样例配置发布链,用于本地开发、模拟器测试、样例玩法联调。
|
||
- 正式前后端联调时,小程序应以 backend `launch` 返回的 `manifestUrl` 为准,而不是直接把根目录 `event/*.json` 当作正式配置入口。
|
||
|
||
## 1. 当前发布链路
|
||
|
||
当前样例配置会发布到 OSS,供样例玩法和调试链路使用:
|
||
|
||
- `classic-sequential`
|
||
- 远端对象:`gotomars/event/classic-sequential.json`
|
||
- 访问地址:`https://oss-mbh5.colormaprun.com/gotomars/event/classic-sequential.json`
|
||
- `score-o`
|
||
- 远端对象:`gotomars/event/score-o.json`
|
||
- 访问地址:`https://oss-mbh5.colormaprun.com/gotomars/event/score-o.json`
|
||
|
||
对应样例加载入口见:
|
||
|
||
- [map.ts](D:/dev/cmr-mini/miniprogram/pages/map/map.ts)
|
||
|
||
## 2. 仓库内已有上传能力
|
||
|
||
项目根目录已有 OSS 上传脚本:
|
||
|
||
- [oss-html.ps1](D:/dev/cmr-mini/oss-html.ps1)
|
||
|
||
该脚本封装了 `tools/ossutil.exe`,默认 bucket 为:
|
||
|
||
- `oss://color-map-html`
|
||
|
||
依赖前提:
|
||
|
||
- 本机存在 [ossutil.exe](D:/dev/cmr-mini/tools/ossutil.exe)
|
||
- 本机存在 `~/.ossutilconfig`
|
||
|
||
## 3. 推荐发布命令
|
||
|
||
项目根目录新增了专门的配置发布脚本:
|
||
|
||
- [publish-event-config.ps1](D:/dev/cmr-mini/publish-event-config.ps1)
|
||
|
||
它会在上传前执行这些检查:
|
||
|
||
- 本地配置文件是否存在
|
||
- JSON 是否可解析
|
||
- 是否包含 `schemaVersion`
|
||
- 是否包含 `game`
|
||
- 是否包含 `game.mode`
|
||
|
||
### 发布全部玩法配置
|
||
|
||
```powershell
|
||
.\publish-event-config.ps1 all
|
||
```
|
||
|
||
### 只发布顺序打点配置
|
||
|
||
```powershell
|
||
.\publish-event-config.ps1 classic-sequential
|
||
```
|
||
|
||
### 只发布积分赛配置
|
||
|
||
```powershell
|
||
.\publish-event-config.ps1 score-o
|
||
```
|
||
|
||
### 仅检查,不上传
|
||
|
||
```powershell
|
||
.\publish-event-config.ps1 all -DryRun
|
||
```
|
||
|
||
## 4. npm 快捷命令
|
||
|
||
也可以使用:
|
||
|
||
```powershell
|
||
npm run publish:config
|
||
npm run publish:config:classic
|
||
npm run publish:config:score-o
|
||
npm run publish:config:dry-run
|
||
```
|
||
|
||
## 5. 当前默认映射关系
|
||
|
||
| 本地文件 | 远端对象 | 说明 |
|
||
| --- | --- | --- |
|
||
| `event/classic-sequential.json` | `gotomars/event/classic-sequential.json` | 顺序打点默认配置 |
|
||
| `event/score-o.json` | `gotomars/event/score-o.json` | 积分赛默认配置 |
|
||
|
||
## 6. 维护约定
|
||
|
||
后续如果新增新玩法配置发布,建议同步修改以下位置:
|
||
|
||
1. [publish-event-config.ps1](D:/dev/cmr-mini/publish-event-config.ps1)
|
||
2. [package.json](D:/dev/cmr-mini/package.json)
|
||
3. [配置发布说明.md](D:/dev/cmr-mini/doc/config/配置发布说明.md)
|
||
4. [配置文档索引.md](D:/dev/cmr-mini/doc/config/配置文档索引.md)
|
||
5. 对应玩法目录下的样例配置说明
|
||
|
||
## 7. 后续演进方向
|
||
|
||
当前方案属于“本地校验 + 手动发布到 OSS”。
|
||
|
||
后续接入正式后台后,推荐演进为:
|
||
|
||
1. 后台装配并校验配置
|
||
2. 后台生成发布版本
|
||
3. 后台上传 OSS/CDN
|
||
4. 客户端仍只读取静态 JSON
|