Files
cmautobuy/docs/task/188-admin打包部署最新版本.md
T
2026-08-12 16:36:27 +08:00

62 lines
3.1 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.
# 188 Admin:打包部署最新版本 6ea45b7 到生产服务器
- 工单号:#188
- 标题:Admin:打包部署最新版本 6ea45b7 到生产服务器
- 类型:部署
- 父级大工单:#14
- 所属 MVP / 版本:#15 Admin 四模块可用闭环
- 状态:待验收
- 日期:2026-08-12
- Gitea:<http://ilaer.eicp.net:8418/chengma/cmautobuy/issues/188>
## 背景与目标
把提交 `6ea45b7` 对应的最新 Admin 代码构建并发布到生产服务器,通过
`https://buy.833729.com` 提供服务,同时保留生产配置、数据、发布前数据库备份和
上一版本回退能力。
## 最终方案
- 使用固定 Go 1.23.0 验证代码并构建 Linux amd64、CGO 关闭的单文件二进制。
- 发布前通过生产环境文件读取业务数据库连接参数,使用单事务逻辑备份,并校验
gzip 完整性和文件权限。
- 上传到独立目录 `/opt/cmautobuy/releases/6ea45b7/`,复用稳定路径下的
`config.yaml` 和 `data`。
- 停止 systemd 服务后原子切换稳定执行链接;新版本启动或本机登录页健康检查失败
时自动切回上一版本。
- 不执行真实顺运宝同步、采集任务或采购下单。
## 改了哪些文件
- 本地构建产物:`admin/.deploy/cmautobuy-admin-6ea45b7`(Git 忽略)。
- 生产发布目录:`/opt/cmautobuy/releases/6ea45b7/`。
- 生产稳定执行链接:`/opt/cmautobuy/cmautobuy-admin` 已指向本次 release。
- 生产备份:`/opt/cmautobuy/backups/autobuy-before-188-20260812T083428Z.sql.gz`。
- 本归档文档:`docs/task/188-admin打包部署最新版本.md`。
## 验收结果
| 验收项 | 结果 |
|---|---|
| 固定 Go 1.23.0 的 `go vet ./...` 通过 | 通过 |
| 全量 `go test ./... -count=1` 通过 | 通过 |
| Linux amd64 二进制本地与远端 SHA-256 一致 | 通过:`f8e3bd1e813844a0fc74c7f06ed82d6cddc5e5ffe63faecf9eb4c219b0f17e17` |
| 发布前数据库备份可用且权限为 600 | 通过:5,039,803 字节,`gzip -t` 通过 |
| systemd 服务 active/enabled,运行目标正确 | 通过:`/opt/cmautobuy/releases/6ea45b7/cmautobuy-admin` |
| Admin 监听生产约定地址 | 通过:`127.0.0.1:18080` |
| 数据库 schema 版本正常 | 通过:v13 |
| 本机根路径、登录页及公网登录页正常 | 通过:303、200、200 |
| 启动日志无迁移失败、panic 或 fatal | 通过 |
| 上一版本可以回退 | 通过:保留 `/opt/cmautobuy/releases/7e2d33c/cmautobuy-admin` |
## 测试
- 执行命令:固定 `GOTOOLCHAIN=go1.23.0` 的 `go vet ./...`、
`go test ./... -count=1`、Linux amd64 `go build`;生产执行 `mysqldump`、
`gzip -t`、`sha256sum`、`systemctl`、`ss`、schema 查询及本机/公网 `curl` 健康检查。
- 结果:全部 Go 包通过;备份和二进制校验通过;线上服务 active/enabled;schema v13;
本机根路径 303、登录页 200;服务器和外部网络访问公网登录页均为 200;启动后错误日志计数为 0。
- **未验证到的部分**:没有使用生产账号登录后逐页进行浏览器人工功能验收;没有发起
真实顺运宝同步、采集或采购任务。