批次1: req-prd 瘦身 + req-design 重定位 + dev-coding 聚焦 批次2: dev-review 新建 + review-checklist 插件 批次3: dev-integration 新建 + req-compare 拆出 批次4: 插件完善 (req-research/db-migration/dev-scaffold/deploy-rollback) 批次5: 平台拆分 (dev-ios/dev-android/dev-mcp/dev-pda) + dev 分组更新 批次6: marketplace.json 32→44 plugins Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
103 lines
2.4 KiB
Markdown
103 lines
2.4 KiB
Markdown
---
|
||
name: deploy-rollback
|
||
description: 回滚方案插件。部署后发现问题时的回滚策略和执行步骤。挂载在 deploy 阶段,部署出问题时激活。
|
||
---
|
||
|
||
# 回滚方案插件 (deploy-rollback)
|
||
|
||
## 概述
|
||
|
||
当生产部署后发现问题时,提供结构化的回滚决策和执行步骤。
|
||
|
||
**触发条件**:
|
||
- 部署后健康检查失败
|
||
- 部署后用户报告问题
|
||
- 部署后监控告警
|
||
|
||
## 回滚决策树
|
||
|
||
```
|
||
问题发现
|
||
├── 服务完全不可用?
|
||
│ └── YES → 立即回滚(紧急)
|
||
├── 核心功能异常?
|
||
│ └── YES → 评估影响范围 → 回滚或热修复
|
||
├── 非核心功能异常?
|
||
│ └── 评估修复时间
|
||
│ ├── < 30 分钟 → 热修复
|
||
│ └── > 30 分钟 → 回滚
|
||
└── 性能下降?
|
||
├── 严重(>5x) → 回滚
|
||
└── 轻微(<2x) → 监控 + 排期修复
|
||
```
|
||
|
||
## 回滚类型
|
||
|
||
### 1. Docker 镜像回滚(最常用)
|
||
|
||
```bash
|
||
# 查看历史镜像
|
||
docker images | grep ai-proj
|
||
|
||
# 回滚到上一版本
|
||
cd deploy
|
||
# 修改 docker-compose.prod.yml 中的镜像 tag
|
||
docker compose -f docker-compose.prod.yml up -d
|
||
|
||
# 验证
|
||
curl -s http://localhost:8080/health | jq .
|
||
```
|
||
|
||
### 2. 数据库回滚
|
||
|
||
```bash
|
||
# 执行 down migration
|
||
cd backend
|
||
migrate -path migrations -database "$DB_URL" down 1
|
||
|
||
# 验证表结构
|
||
psql -U user -d db -c "\d affected_table"
|
||
```
|
||
|
||
**注意**:数据库回滚可能导致数据丢失,必须先评估影响。
|
||
|
||
### 3. 配置回滚
|
||
|
||
```bash
|
||
# 恢复旧配置
|
||
git checkout HEAD~1 -- deploy/config/
|
||
docker compose -f docker-compose.prod.yml restart
|
||
```
|
||
|
||
## 回滚检查清单
|
||
|
||
- [ ] 确认问题现象和影响范围
|
||
- [ ] 通知相关人员(用户需知道在维护中)
|
||
- [ ] 执行回滚操作
|
||
- [ ] 验证服务恢复正常
|
||
- [ ] 验证数据完整性
|
||
- [ ] 记录回滚原因和过程
|
||
- [ ] 创建修复任务
|
||
|
||
## 回滚记录模板
|
||
|
||
```markdown
|
||
## 回滚记录
|
||
|
||
**时间**: YYYY-MM-DD HH:mm
|
||
**触发原因**: [问题描述]
|
||
**影响范围**: [受影响的功能/用户]
|
||
**回滚类型**: Docker 镜像 / 数据库 / 配置
|
||
**回滚操作**: [具体步骤]
|
||
**恢复确认**: [验证结果]
|
||
**根因分析**: [问题根因]
|
||
**修复计划**: [后续修复方案]
|
||
```
|
||
|
||
## 预防措施
|
||
|
||
- 部署前确保 Migration 有 down.sql
|
||
- 部署前确保 Docker 保留上一版本镜像
|
||
- 大变更使用灰度发布
|
||
- 监控关键指标(错误率、延迟、CPU/内存)
|