chore: add 105 runtime and openhands ops tooling

This commit is contained in:
john
2026-06-29 07:01:26 +08:00
parent 65e8a3a5a8
commit d7cbf3cc96
22 changed files with 1263 additions and 50 deletions
+33
View File
@@ -12,6 +12,14 @@
4. 103 **禁止** `npm install``npm run build`、在线改源码后继续运行。
5. 切换后必须通过 Portal 健康检查;失败立即回滚。
补充:
- `103 / Studio` runtime 发布入口:`bash scripts/release-portal-runtime-prod.sh`
- `105` runtime 发布入口:`bash scripts/release-portal-runtime-105.sh`
- 两者都必须是 **runtime artifact**,不要直接发源码树
- `105``103` 的关键差异是:
`105` 为 Linux 环境,**不要携带本机 Mac 的 `node_modules`**;应在 `105` 切换前本机执行 `npm install --omit=dev --no-package-lock`
## 唯一入口
```bash
@@ -19,6 +27,13 @@ bash scripts/release-portal-runtime-prod.sh --dry-run
bash scripts/release-portal-runtime-prod.sh
```
如果目标环境是 `105`
```bash
bash scripts/release-portal-runtime-105.sh --dry-run
bash scripts/release-portal-runtime-105.sh --yes
```
## 产物发布流程
1. 本地 commit 当前改动。
@@ -32,6 +47,24 @@ bash scripts/release-portal-runtime-prod.sh
9. 启动 Portal,检查 `127.0.0.1:8081/api/status` 为 200。
10. 旧源码 live 目录移入 `archives/`,线上不再保留可运行源码树。
## 105 runtime 发布差异
`105` 当前不是 launchd,而是 `systemd` 服务:
```text
goose-h5.service
WorkingDirectory=/root/tkmind_go/ui/h5
EnvironmentFile=/root/tkmind_go/ui/h5/.env
ExecStart=/opt/node/bin/node /root/tkmind_go/ui/h5/server.mjs
```
所以 `105` 发布时要额外满足:
1. 保留 `.env` / `MindSpace/` / `data/` / `users/` / `logs/` / `public/plaza-covers/`
2. 远端切换前在新的 runtime 目录执行 Linux 依赖安装
3. 最终用 `systemctl restart goose-h5` 拉起服务
4. 健康检查目标是 `http://127.0.0.1:8080/api/status`
## 禁止事项
- 禁止 `rsync_to_server.sh`