JianFeeeee
56b9028579
fix(deploy): 三个工具统一 AGENTMAIL_PREFIX + go 环境预检(别把环境问题报成代码问题)
pi 的 G 项,两处都实测确认:
1. **`PREFIX` 三套写法**:`redeploy-gateway.sh` 与 `reset-demo.sh` 都是
`${AGENTMAIL_PREFIX:-/opt/agentmail}`,只有 `install.sh` 写死 `/opt/agentmail`
⇒ 谁设了那个变量,install 装到 A、redeploy 看 B、drift-check 看 C。
实际不止一处:`install.sh` 里另有 3 处**绕过自己的 `$PREFIX`** 硬编码
(`agent-config`、`pi-config`、`bin/` 的 install),`redeploy-gateway.sh` 里也有 2 处
(它自己有 `$PREFIX` 却绕过)。全部收回 `$PREFIX`;`install.sh` 改为尊重
`${AGENTMAIL_PREFIX:-/opt/agentmail}`。`install.sh` 里 `/opt/agentmail` 现在只剩
注释与默认值两处。
⚠️ `check-deploy-drift.mjs` 仍是硬编码——**没有改**:它是独立工具、不 source 任何脚本,
要它认前缀得先定义"配置从哪来",那是设计题不是一行改动。(已在此留档。)
2. **`--check` 相位新增的 go 门禁会产出误导信号**:我实测(沙箱里没有 `HOME`/`GOPATH`)
它报 `go: module cache not found: neither GOMODCACHE nor GOPATH is set`,
然后被我说成"go vet / go test 不过 —— **先修好再安装**" ——
**把环境问题报成代码问题**,而那正好诱导人去 sudo 建目录
(GOPATH 会落到 `${GOPATH:-$HOME/go}/pkg/mod`)。
加一句预检:`go env GOMODCACHE` 为空 ⇒ 明说"环境不足"并 **exit 2**(环境约定),
不再冒充代码缺陷。实测:沙箱里现在报"环境不足…药方:带上有 HOME 的环境重跑"、退出码 2;
带上 `HOME=/root` 后 `go vet` + `go test` **通过**(退出码 0)。
2026-09-14 20:27:26 +08:00
..
2026-09-14 08:38:33 +08:00
2026-09-13 11:06:01 +08:00
2026-09-14 20:25:24 +08:00
2026-09-12 11:36:25 +08:00
2026-09-12 14:58:36 +08:00
2026-09-14 20:27:26 +08:00
2026-09-14 20:06:19 +08:00
2026-09-14 15:51:40 +08:00
2026-09-14 20:27:26 +08:00
2026-09-14 20:13:57 +08:00
2026-09-06 15:18:06 +08:00
2026-09-02 20:05:51 +08:00
2026-09-13 11:06:01 +08:00
2026-09-13 11:06:01 +08:00
2026-09-14 08:38:33 +08:00