chore: track version files, docs, web app split, scripts (missed commits from March work)
This commit is contained in:
@@ -0,0 +1,49 @@
|
||||
# INP2P 部署校验规范(强制)
|
||||
|
||||
> 目标:每次新部署后,必须自动校验“服务端/客户端版本一致 + 无残留旧进程/旧二进制”。
|
||||
|
||||
## 1. 版本控制
|
||||
|
||||
- 项目版本源:`VERSION`
|
||||
- 构建时自动注入:`Version / GitCommit / BuildTime / GoVersion`
|
||||
- 约束:`bin/inp2ps` 与 `bin/inp2pc` 的 `-version` 输出必须等于 `VERSION`。
|
||||
|
||||
## 2. 校验脚本
|
||||
|
||||
- 脚本:`scripts/deploy-check.sh`
|
||||
- Make 入口:`make verify-deploy`
|
||||
|
||||
脚本会检查:
|
||||
|
||||
1) 二进制版本是否匹配 `VERSION`
|
||||
2) `inp2ps.service` 是否 active
|
||||
3) `inp2ps.service` 的主进程是否运行自 `bin/inp2ps`
|
||||
4) 是否存在残留 inp2p 进程(除当前服务主 PID 外)
|
||||
5) 是否存在残留旧二进制(`*.old*/*.new*`、根目录历史二进制)
|
||||
|
||||
输出:
|
||||
- 报告目录:`run/deploy-check/`
|
||||
- 报告文件:`deploy-check-YYYYmmdd-HHMMSS.txt`
|
||||
- 失败时脚本返回非 0(可用于 CI/发布门禁)
|
||||
|
||||
## 3. 标准发布流程(建议)
|
||||
|
||||
```bash
|
||||
cd /root/.openclaw/workspace/inp2p
|
||||
|
||||
# 1) 编译(自动读取 VERSION)
|
||||
make build
|
||||
|
||||
# 2) 部署(替换后重启服务)
|
||||
systemctl restart inp2ps.service
|
||||
|
||||
# 3) 强制校验(必须通过)
|
||||
make verify-deploy
|
||||
```
|
||||
|
||||
## 4. 失败处理原则
|
||||
|
||||
- 任一校验 FAIL:视为发布未完成
|
||||
- 必须先清理残留再进入可用状态
|
||||
- 建议在变更记录中附上本次校验报告路径
|
||||
|
||||
Reference in New Issue
Block a user