Fengling Console - 控制台后端
Go to file
movingsam 3ec055b871
All checks were successful
Build and Push Docker / build (push) Successful in 4m28s
feat(gateway-config): 实现 K8s 服务监听和待确认配置管理基础结构
本次提交包含网关配置重构的第一阶段实现(IMPL-1, IMPL-4):

## 新增功能

### 1. K8s 服务监听服务 (IMPL-1)
- 新增 K8sServiceWatchService - 后台服务监听 Kubernetes Service 变化
- 支持 Watch API 和自动重连机制(指数退避策略)
- 使用 Channel 处理事件,防止内存无限增长
- 支持集群内配置和本地 kubeconfig 两种模式

### 2. 待确认配置管理 (IMPL-4)
- 新增 PendingConfig 实体,用于存储待用户确认的配置变更
- 新增 PendingConfigType 枚举(Route, Cluster, Destination)
- 新增 PendingConfigSource 枚举(K8sDiscovery, Manual)
- 新增 PendingConfigStatus 枚举(Pending, Confirmed, Rejected, Modified)
- 生成 EF Core 迁移 AddPendingConfig,创建 gw_pending_configs 表

## 技术变更

### NuGet 包
- 添加 KubernetesClient 16.0.2 包引用

### 数据库
- 更新 ConsoleDbContext,添加 PendingConfigs DbSet
- 配置 PendingConfig 表索引(Status, ServiceName, CreatedAt)

### EF Core 兼容性修复
- 修复 EF Core 10 中 JSON 值对象的映射问题
- 使用值转换器替代 OwnsOne().ToJson() 配置

## 文件变更
- 新增: src/Services/K8sServiceWatchService.cs
- 新增: src/Models/Entities/PendingConfig.cs
- 新增: src/Models/Entities/PendingConfigEnums.cs
- 新增: src/Migrations/20260307161935_AddPendingConfig.cs
- 修改: src/Program.cs (注册 K8sServiceWatch)
- 修改: src/Data/ConsoleDbContext.cs (添加实体配置)
- 修改: Directory.Packages.props (添加 KubernetesClient)

关联任务: IMPL-1, IMPL-4
关联重构计划: WFS-gateway-refactor
2026-03-08 00:32:30 +08:00
.gitea/workflows chore(workflows): 添加缺失的actions/checkout步骤 2026-03-01 23:23:11 +08:00
.planning refactor(gateway): adapt to Platform 1.0.12 entity changes 2026-03-04 13:00:11 +08:00
k8s feat: 添加 CPM 中央包管理和 CI/CD 配置 2026-02-28 14:05:38 +08:00
src feat(gateway-config): 实现 K8s 服务监听和待确认配置管理基础结构 2026-03-08 00:32:30 +08:00
.dockerignore fix: 修复 CI/CD Docker 构建 context 和 Dockerfile 路径 2026-02-28 21:55:15 +08:00
.gitignore Add .gitignore 2026-02-25 17:26:54 +08:00
Directory.Build.props feat: 添加 CPM 中央包管理和 CI/CD 配置 2026-02-28 14:05:38 +08:00
Directory.Packages.props feat(gateway-config): 实现 K8s 服务监听和待确认配置管理基础结构 2026-03-08 00:32:30 +08:00
Fengling.Console.slnx chore(solution): 删除解决方案中的Dockerfile引用 2026-02-28 18:04:53 +08:00
global.json feat: 添加 CPM 中央包管理和 CI/CD 配置 2026-02-28 14:05:38 +08:00
NuGet.Config fix(nuget): 删除gitea源中多余的包模式 2026-03-01 15:21:10 +08:00