# 生产一键部署脚本前端实施记录 ## 修改内容 - 在 `bin/prod/deploy_from_package.sh` 中新增前端 `dist.zip` 唯一校验逻辑 - 新增旧版 `frontend/dist` 时间戳备份规则 - 新增新版 `frontend/dist.zip` 替换逻辑 - 新增前端静态资源解压到 `frontend/dist/` 的逻辑 - 新增 `resolve_frontend_source_dir`,支持从 `dist.zip` 解压结果中定位实际前端根目录 ## 范围确认 - 本次前端交付物仅为部署脚本中的静态包部署链路 - 未修改 `ruoyi-ui` 下任何页面、接口、构建配置或打包脚本 - 如后续出现页面需求,需要回到新需求重新做设计和计划 ## 实现说明 - 脚本会校验发布包中必须且只能存在 1 个 `dist.zip` - 若 `frontend/dist` 已存在,则原地重命名为 `dist-<时间戳>` - 新版前端压缩包统一替换到 `frontend/dist.zip` - 新版前端资源统一解压到 `frontend/dist/` - 解压结果支持以下结构: - 解压根目录直接为前端文件 - 解压后为 `dist/index.html` - 其他情况下通过 `find index.html` 自动定位前端根目录 ## 验证结果 - 已执行 `sh bin/prod/deploy_from_package_test.sh` - 自测覆盖以下前端链路: - 旧版 `frontend/dist` 被重命名为时间戳备份目录 - 新版 `frontend/dist.zip` 成功替换 - 新版前端资源成功解压到 `frontend/dist/index.html` - 解压后的页面内容与发布包内容一致 - 已执行 `git status --short ruoyi-ui` - 已确认 `ruoyi-ui` 本次没有新增或修改的源码文件被纳入改动范围