feat(release): gate backend deploy and rollback

This commit is contained in:
key
2026-07-29 03:28:10 +08:00
parent c3e0789f29
commit 39476b2244
5 changed files with 724 additions and 1 deletions
+1
View File
@@ -46,6 +46,7 @@
- 只发布移动端静态资源时,用 `npm --prefix mobile-uni run build:h5` 后备份远端 `/opt/wygj/www/h5`,再 `rsync -az --delete mobile-uni/dist/build/h5/ YCWY:/opt/wygj/www/h5/`;前端静态修复不需要重启后端。
- 原生 App 不复用 H5 静态发布流程;`npm --prefix mobile-uni run build:app` 仅生成 HBuilderX 出包资源,未提供法务 HTTPS 链接、签名或真机验收前不得称为已出包或上架。
- 定向后端发布只启用远端后端 + schema 的 `release-preflight`,不得因本轮未发布的管理端/H5 不匹配而制造假失败,也不得把结果称为完整包匹配;完整发布收口须同时启用远端静态、后端和 schema,只有三项都通过才可称当前本地构建已与线上完整包匹配。
- 定向后端发布先运行只读 `scripts/release-backend.sh plan`;`deploy`/`rollback` 必须获得独立明确授权并使用计划输出的完整哈希授权串。脚本目标固定为 `YCWY:/opt/wygj/app/ruoyi-admin.jar` 和 `wygj-aihr.service`,不得绕过备份、原子切换、发布后预检和失败恢复链路手工覆盖。
- `aihr.practice.runtime-schema-bootstrap` / `AIHR_PRACTICE_RUNTIME_SCHEMA_BOOTSTRAP` 仅限本地开发逃生开关,Spring 默认关闭;生产请求只能校验表、列和关键索引,任何 DDL 都必须由正式 SQL 迁移完成,完整预检会拒绝开启该开关的服务。
## 当前业务边界