docs(gitea): 记录精简升级验收策略
lint / yaml (push) Successful in 27s
lint / terraform (push) Successful in 38s
lint / yaml (pull_request) Successful in 15s
lint / terraform (pull_request) Successful in 30s
lint / ansible (push) Successful in 6m16s
lint / ansible (pull_request) Successful in 5m41s

This commit is contained in:
2026-09-10 07:22:22 +00:00
parent 5539793e10
commit 31d2a63223
3 changed files with 47 additions and 13 deletions
+21 -6
View File
@@ -6,7 +6,7 @@ Envoy Gateway HTTPRoute 提供。Helm chart 自带的无 class Ingress 暂时保
## Flux 接管
现有 release 是 `gitea-12.5.3`(Gitea `1.25.5`)。接管分为两个 PR:第一阶段创建
初始接管 release 是 `gitea-12.5.3`(Gitea `1.25.5`)。接管分为两个 PR:第一阶段创建
固定版本且 `suspend: true` 的 HelmRelease,只让 Flux 登记对象;确认 source Ready
并重新验证完整 chart render 后,第二阶段解除 suspend。第一阶段已经确认 source、
子 Kustomization 和 HTTPRoute 均 Ready,Helm revision 与 Gitea Pod 未变化;第二次
@@ -24,8 +24,23 @@ Gitea 是 Flux GitRepository 的上游。升级或重启期间 Git source 暂时
跨 minor 的执行顺序、停机一致备份和失败恢复步骤见
[`../../docs/gitea-upgrade-plan.md`](../../docs/gitea-upgrade-plan.md)。
第一跳 chart `12.6.0` / Gitea `1.26.4` 已完成,migration、API、Git push 和 CI 均
通过。第二跳 desired state 已准备为 chart `12.7.0` / Gitea `1.27.3`,HelmRelease
的激活变更只移除 `suspend`。第二跳按明确决定跳过新的 1.26.4 停机一致回滚点;若
1.27 migration 后失败,现有 1.25.5 本地备份只能恢复到更早状态,不能无损回退到
1.26.4。第一阶段备份也没有上传 OCI 或建立异机副本,因此恢复冗余低于长期目标。
当前 release 是 chart `12.7.0` / Gitea `1.27.3-rootless`。两次跨 minor migration、
API、OIDC、Git/Flux 和 runner 均已验证。第二跳按明确决定跳过了新的 1.26.4 停机
一致回滚点;现有 1.25.5 本地备份没有 OCI 或异机副本,因此只作为会丢失后续状态的
灾难恢复点。
## 后续升级默认策略
已连续验证两次 Flux 驱动的跨 minor Recreate upgrade,后续常规 patch/minor 升级
不再默认执行长时间观察、临时 branch push/delete、重复 CI、逐条 migration 日志审计
或每个 minor 的停机备份。默认只需要:
1. 固定 chart 和实际 `image.tag`,阅读与本配置相关的 breaking/security notes;
2. Helm/Kustomize render 通过 review;
3. 合并后确认 HelmRelease `UpgradeSucceeded`、Pod Ready 且没有 CrashLoop;
4. API 返回目标版本,并简单确认 OIDC 登录和一次正常 Git 操作。
只有变更数据库后端或存储布局、rootless 模式、PVC identity、部署策略、重大 chart
结构,或者 release notes 指出相关 breaking migration 时,才恢复停机一致备份、分阶段
suspend、详细日志审计和扩展验收。出现启动失败或 migration error 时也立即升级为完整
故障流程。