chore: 统一本地服务器与远程仓库源码

- 合并 main 与 master 历史并以服务器结构为基线
- 保留迁移、数据保留、AWS 账单与部署安全能力
- 建立 SDD 规格和 CI 验证闭环
This commit is contained in:
Logan.Li committed 2026-08-05 20:03:25 +08:00
commit fd60361d93
460 files changed
+37492 -23871

No files matched your search

+3 -12
View File
@@ -7,7 +7,7 @@ AIOps 使用 GORM 作为 ORM 框架,支持 SQLite / MySQL / PostgreSQL。
- **默认**: SQLite(零配置,数据文件 `backend/data/aiops.db`)
- **生产**: 推荐使用 MySQL 或 PostgreSQL
首次启动时,`AutoMigrate` 会自动创建所有表。
首次初始化请显式执行 `aiops migrate up` 创建基线;服务启动时不会自动修改表结构。迁移流程见 [数据库版本化迁移](../database-migrations.md)。 // Logan.Li
## 数据模型
@@ -168,18 +168,9 @@ approval_templates ──< approval_processes ──< approval_steps
navigation_groups ──< navigation_links
```
## AutoMigrate
## 版本化迁移
表结构在 `backend/pkg/database/database.go` 中定义,服务启动时自动执行:
```go
func AutoMigrate(db *gorm.DB) error {
return db.AutoMigrate(
&models.User{}, &models.Role{}, &models.Permission{},
&models.Server{}, &models.Cloud{}, ...
)
}
```
模型基线由 `backend/pkg/database/database.go` 的 `BootstrapSchema` 定义,但只允许由 `aiops migrate up` 显式调用。后续变更按版本存放在 `backend/migrations/`,并记录至 `sys_schema_migrations`;已运行的服务不会在启动期间执行迁移。 // Logan.Li
## 切换数据库