chore: split dev and production deployment env

This commit is contained in:
湛兮
2026-06-05 12:32:23 +08:00
parent ab73565d37
commit 644c729ff0
9 changed files with 319 additions and 2 deletions
+18 -1
View File
@@ -52,7 +52,11 @@ http://localhost:8848/
├── .vscode/ # VS Code 推荐配置与 Vue 代码片段
├── build/ # Vite 插件、CDN、压缩、构建信息与工具函数
├── docs/ # 项目需求和后台扩展说明
── C_APP_ADMIN_REQUIREMENTS.md # C 端正式版管理后台需求文档
── C_APP_ADMIN_REQUIREMENTS.md # C 端正式版管理后台需求文档
│ └── ENVIRONMENT_DEPLOYMENT.md # 测试/生产环境拆分与 Jenkins 规则
├── deploy/ # Jenkins 部署脚本
│ └── jenkins/
│ └── deploy-static.sh # 静态产物部署脚本
├── public/ # 静态资源与运行时平台配置
├── src/ # 前端源码
│ ├── api/ # HTTP API 封装,业务接口集中在 access.ts
@@ -70,6 +74,7 @@ http://localhost:8848/
├── types/ # 全局类型声明、组件声明、路由声明和 Vue shim
├── AGENTS.md # Codex/Agent 入口规则,转到 RTK.md
├── RTK.md # 本仓库协作规则与 README 同步要求
├── Jenkinsfile # Jenkins 测试自动部署、生产手动 Tag 部署规则
├── Dockerfile # 容器构建入口
├── package.json # 依赖、脚本、engines 与 pnpm preinstall 限制
├── pnpm-lock.yaml # pnpm 锁文件
@@ -86,6 +91,8 @@ http://localhost:8848/
| `pnpm dev` | 启动 Vite 开发服务,默认端口来自 `.env.development``VITE_PORT=8848` | 本地开发 |
| `pnpm serve` | `pnpm dev` 的别名 | 兼容习惯命令 |
| `pnpm build` | 清理 `dist` 后执行生产构建,内存上限设为 8192MB | 发布前打包 |
| `pnpm build:test` | 使用 `test` mode 构建测试环境静态产物 | Jenkins 测试部署 |
| `pnpm build:prod` | `pnpm build` 的生产构建别名 | Jenkins 生产部署 |
| `pnpm build:staging` | 使用 `staging` mode 构建 | 预发布环境验证 |
| `pnpm report` | 构建并打开 Rollup 可视化分析报告 | 分析包体积 |
| `pnpm preview` | 预览已有 `dist` 构建产物 | 构建后本地验收 |
@@ -177,10 +184,20 @@ http://localhost:8848/
- `.env`: 全局默认配置,目前包含端口和是否隐藏首页。
- `.env.development`: 开发环境端口、路由模式、API 代理目标。
- `.env.test`: 测试环境构建配置,Jenkins 测试部署使用;线上测试站点的 `/api` 应由 Nginx 代理到测试后端。
- `.env.staging`: 预发布构建配置,可开启 CDN。
- `.env.production`: 生产构建配置。
- `public/platform-config.json`: pure-admin 运行时平台配置,例如标题、布局、主题、标签页和菜单搜索历史。
## Jenkins 环境规则
流水线规则见 [docs/ENVIRONMENT_DEPLOYMENT.md](./docs/ENVIRONMENT_DEPLOYMENT.md)。
- 测试环境:`develop` 合并后自动触发,执行 `pnpm build:test`,部署到 `/srv/www/test/role-admin/current`
- 生产环境:禁止代码合并自动触发,只能在 Jenkins 手动选择 `DEPLOY_ENV=production` 并填写 Gitea 项目 Tag。
- 生产部署会先 checkout 到 `RELEASE_TAG` 对应的提交,再执行 `pnpm build:prod` 和部署。
- 测试、生产站点的 `/api` 必须分别代理到测试、生产 `access-manage`,避免环境串线。
## 协作与文档同步
- 文件结构、入口文件、业务模块、脚本或关键配置发生变化时,必须同步更新本 README 的「目录说明」「重要脚本」或对应说明段落。