feat: 打通 Jenkins 直构导入闭环
This commit is contained in:
@@ -35,6 +35,7 @@ pnpm prisma:seed
|
||||
|
||||
- 迁移历史从 `prisma/migrations/20260611000000_baseline_current_schema` 开始,空库可以直接执行 `pnpm prisma migrate deploy` 初始化当前 schema。
|
||||
- 生产库在启用 Prisma 迁移历史前已经存在表结构;`deploy/deploy-devops-platform-api-from-jenkins.sh` 会检测完整表结构并自动将基线迁移标记为已应用,再执行 `pnpm prisma migrate deploy`。
|
||||
- `20260612093000_add_jenkins_external_trigger` 会扩展发布记录触发来源,用于保存 Jenkins 直接构建导入的 run。
|
||||
- Jenkins 服务器使用 `/usr/local/bin/deploy-devops-platform-api-from-jenkins`,该脚本应与仓库 `deploy/deploy-devops-platform-api-from-jenkins.sh` 保持一致。
|
||||
- 如需紧急跳过迁移,可在服务器环境中设置 `PRISMA_MIGRATE_DEPLOY_ENABLED=false`,但不能在存在 schema 变更的版本长期使用该开关。
|
||||
- 新增表或字段时必须提交新的 `prisma/migrations/<timestamp>_<name>/migration.sql`,不要再用手工 SQL 直接改生产库。
|
||||
@@ -42,7 +43,8 @@ pnpm prisma:seed
|
||||
## 内置账号
|
||||
|
||||
- 超级管理员账号:`zhanxi`
|
||||
- 超级管理员初始密码:`zx123456@`,可通过服务器环境变量 `SUPER_ADMIN_INITIAL_PASSWORD` 覆盖。
|
||||
- 本地开发默认超级管理员初始密码:`zx123456@`。
|
||||
- 生产环境必须通过服务器环境变量 `SUPER_ADMIN_INITIAL_PASSWORD` 提供超级管理员初始密码;未配置时服务会拒绝使用公开默认密码初始化。
|
||||
- 普通成员初始密码:`111111`
|
||||
|
||||
超级管理员初始化配置集中在 `src/auth/auth.constants.ts`、`prisma/seed.js` 和服务器环境变量。服务启动和种子数据只负责确保超级管理员账号存在并保持最高权限;如果超级管理员已修改密码,后续初始化不会覆盖密码。
|
||||
@@ -53,7 +55,7 @@ pnpm prisma:seed
|
||||
pnpm reset:super-admin-password
|
||||
```
|
||||
|
||||
该命令面向已构建的服务器部署目录,会自动读取当前目录的 `.env.production`。默认把 `zhanxi` 的密码重置为 `zx123456@`。如需临时指定一次性重置密码,可在服务器环境中设置 `SUPER_ADMIN_RESET_PASSWORD` 后执行命令。脚本不会输出明文密码。源码开发调试时可先执行 `pnpm build`,或使用 `pnpm reset:super-admin-password:dev`。
|
||||
该命令面向已构建的服务器部署目录,会自动读取当前目录的 `.env.production`。生产环境必须临时设置 `SUPER_ADMIN_RESET_PASSWORD` 后执行命令,脚本不会输出明文密码。本地开发未设置该变量时仍可回退到开发默认密码,源码调试可先执行 `pnpm build`,或使用 `pnpm reset:super-admin-password:dev`。
|
||||
|
||||
## 关键接口
|
||||
|
||||
@@ -80,6 +82,7 @@ pnpm reset:super-admin-password
|
||||
- `POST /deploy-runs/:id/retry`:重试发布单,需要构建权限。
|
||||
- `POST /deploy-runs/:id/sync-jenkins`:同步单个发布单 Jenkins 状态,需要构建权限。
|
||||
- `POST /deploy-runs/sync-jenkins`:同步全部 Jenkins 状态,仅超级管理员可用。
|
||||
- `POST /deploy-runs/import-jenkins`:扫描已纳管 Jenkins job 最近构建并导入平台外直接构建记录,仅超级管理员可用。
|
||||
- `GET /audit-logs`:超级管理员查询脱敏审计日志。
|
||||
- `GET /settings/integration-config`:超级管理员查询集成配置状态。
|
||||
- `GET /health`:运行健康检查。
|
||||
@@ -106,8 +109,8 @@ pnpm reset:super-admin-password
|
||||
|
||||
- `AUTH_TOKEN_SECRET`:登录 token 签名密钥。
|
||||
- `AUTH_TOKEN_TTL_SECONDS`:登录 token 有效期,默认 43200 秒。
|
||||
- `SUPER_ADMIN_INITIAL_PASSWORD`:覆盖超级管理员初始化密码;不设置时使用集中初始化配置中的 `zx123456@`。
|
||||
- `SUPER_ADMIN_RESET_PASSWORD`:仅服务器重置脚本使用的一次性超级管理员重置密码。
|
||||
- `SUPER_ADMIN_INITIAL_PASSWORD`:生产环境必填的超级管理员初始化密码;本地开发不设置时才使用默认值。
|
||||
- `SUPER_ADMIN_RESET_PASSWORD`:服务器重置脚本使用的一次性超级管理员重置密码;生产环境执行重置时必填。
|
||||
- `SECRET_ENCRYPTION_KEY`:服务端密钥加密密钥,生产环境保存 Agent 密钥时必须配置。
|
||||
- `DATABASE_URL`:MySQL 连接地址。
|
||||
- `USE_DATABASE_READS`:是否启用 Prisma 数据读写。
|
||||
|
||||
Reference in New Issue
Block a user