升级 runbook
在控制台一键升级,或在删除凭据后按本文手动升级实例。
升级分两条路径:控制台一键升级(推荐,凭据有效且授权 active)和手动升级 (删除凭据后实例进入手动模式,见 AC-BIZPROV-08)。
0. 升级前
- 记录当前版本与
Version ID(控制台实例详情 / 部署输出)。 - 备份 D1(
wrangler d1 export)与 R2 关键对象;至少保留最近一次可用备份。 - 阅读本次 release notes / changelog,确认 migration 是否包含破坏性变更。
- 确认授权状态为
active;已超限仍允许升级(决策 66 ⑥),但升级不会自动补授权。
1. 控制台一键升级
- 打开控制台 → 实例详情 → 「一键升级」。
- 系统先校验双闸门:部署凭据存在 + 授权 active。任一不满足时按钮置灰并说明原因。
- 升级 job 会实时显示阶段;成功后实例版本更新,历史里可见。
- 失败时自动回滚到上一版本;在「升级历史」查看失败阶段与原因,再按排障 runbook 处理。
平台执行面归 INFRA 生命周期;控制台只做触发、权限、幂等与状态回写。
2. 手动升级(凭据已删除 / 手动模式)
删除 CF 凭据后,实例转手动模式,自动流水线不再可用。按以下步骤执行:
cd coreott-instance
git fetch --tags
git checkout <target-version> # 或解压平台提供的新版本部署包
./deploy.sh <env> plan # 五项检查必须全过
./deploy.sh <env> migrate # 先备份 D1;破坏性 migration 见 release notes
./deploy.sh <env> build
./deploy.sh <env> deploy
./deploy.sh <env> verify # 必须全绿
手动升级不会自动写回平台版本号;升级完成后在控制台「实例详情」核对版本/上报时间, 必要时联系平台运营补录。
3. 升级后验收
/api/health的migrationCount/latestMigration与 release notes 一致;- 首页、定价页、控制台、CRM、工单入口可打开;
- 实例 pull 授权正常(
license_state不异常); - 关键业务动作(下单/续费/工单)各做一次冒烟。
4. 失败与回滚
plan/migrate/deploy任一失败:停止,不要继续后续步骤。verify失败:按「回滚 runbook」回上一版本。- migration 已执行且数据受损:不要直接重跑;按备份恢复流程处理。
5. 记录
升级记录至少包含:旧/新版本、Version ID、migration 列表、备份位置、verify 结果、 执行人与时间。