chore: 更新子仓库指针和项目说明
This commit is contained in:
+1
-1
Submodule update-client updated: fcd67e08aa...1c8ec37d2b
+1
-1
Submodule update-server updated: bc44ce8053...801622904c
@@ -31,12 +31,14 @@ update-server/ FastAPI 后端、Vue 管理后台、Docker 离线部署包
|
||||
- 发布压缩包支持 zip、tar.gz、tgz、tar.bz2、tbz2、rar。
|
||||
- 发布任务后台化:上传完成后,服务端后台继续处理,页面轮询任务状态。
|
||||
- 崩溃报告上传、查询、文件下载和符号包上传接口。
|
||||
- Git 标签清单:管理后台策略可控制 Launcher 是否生成 `tags.txt`;服务端用 `GITEA_TOKEN` 拉取仓库 tags,客户端永远拿不到 token,只拿整理后的文本。
|
||||
|
||||
## 当前要特别注意
|
||||
|
||||
- `keys/manifest_private_key.pem` 必须在真实服务端部署包里,但不能进 Git、不能给客户端、不能公开传播。
|
||||
- 客户端 SDK 里的 `manifest_public_key.pem` 必须和服务端私钥配套。
|
||||
- `config/server_config.json` 会编进客户端程序;改服务端地址后必须重新编译 Launcher / Updater / Bootstrap。
|
||||
- `GITEA_TOKEN` 只允许放在服务端 `.env`,不要写进客户端配置、不要给 Launcher、不要提交 Git。
|
||||
- `app_config.json` 首次启动会导入当前用户配置区,非空配置导入后会清空为 `{}`。
|
||||
- Manifest 缓存和设备身份等运行态文件默认在当前用户数据目录,不再默认写安装目录。
|
||||
- 公网部署前仍建议改默认 token/password、配置 HTTPS、限制 MinIO 控制台暴露范围、收紧 CORS。
|
||||
|
||||
@@ -71,6 +71,7 @@ MainApp.exe / MainApp 当前仓库内的示例业务程序
|
||||
- 升级后健康检查 `--health-file`,业务程序启动成功后写入 `ok`。
|
||||
- 升级失败回滚。
|
||||
- 升级日志和下载日志上报服务端。
|
||||
- Git 标签清单生成:如果服务端策略开启,`Launcher` 会请求服务端生成 Git tags 文本,并写入 `Launcher` 同目录下的 `tags.txt`;客户端不会接触 Git token。
|
||||
- Launcher / Updater / Bootstrap 已支持 Windows 和 Linux Qt 跨平台编译。
|
||||
|
||||
## 三、客户端 SDK 交付状态
|
||||
@@ -135,6 +136,7 @@ Linux 当前已完成 Qt 跨平台编译、Linux SDK 打包脚本、Linux 最终
|
||||
- 后端工程结构:参考 FastAPI 官方 full-stack 模板、FastAPI Users 等成熟 FastAPI 后台项目的分层方式,拆成 `routes / services / repositories / schemas / core`。
|
||||
- 管理后台前端:使用 GitHub 上的 `pure-admin-thin` / `vue-pure-admin` 生态,技术栈是 `Vue3 + Element Plus + TypeScript + Vite`。
|
||||
- 存储组件:元数据使用 SQLite,版本文件和崩溃文件使用 MinIO 对象存储。
|
||||
- Git 标签清单:服务端支持通过 `GITEA_BASE_URL` / `GITEA_TOKEN` 访问 Gitea API,管理后台策略页可以控制 Launcher 是否生成 `tags.txt`,并在后台预览当前仓库 tags。`GITEA_TOKEN` 只保存在服务端 `.env`,不会返回给客户端。
|
||||
- 当前说明:后端已经完成工程化分层,并已加入用户名/密码登录、Argon2 密码哈希、JWT access/refresh token、RBAC 权限检查和管理员用户管理页面。当前实现是轻量用户体系,后续仍可继续接入 FastAPI Users 等更完整的成熟认证组件。
|
||||
- 自动化测试:使用 pytest,测试会创建隔离的临时数据库、临时 Manifest 私钥和临时存储目录,覆盖管理员登录/JWT、License/设备登记、更新检查、发布事务和崩溃报告核心流程。
|
||||
|
||||
|
||||
Reference in New Issue
Block a user