整理配置和代码入口,增加部分测试。

This commit is contained in:
strepsiades
2026-03-10 12:22:54 +08:00
parent 515c3d9388
commit a638e4203b
35 changed files with 1314 additions and 199 deletions
+12 -1
View File
@@ -15,6 +15,14 @@ class JsonlDataSourceConfig(BaseModel):
handler_configs: Dict[str, Dict[str, Any]] = Field(default_factory=dict)
class DbDataSourceConfig(BaseModel):
model_config = ConfigDict(extra="forbid", validate_assignment=True)
type: Literal["db"] = "db"
target_project_ids: List[str] = Field(default_factory=list)
handler_configs: Dict[str, Dict[str, Any]] = Field(default_factory=dict)
class ApiDataSourceConfig(BaseModel):
model_config = ConfigDict(extra="forbid", validate_assignment=True)
@@ -31,4 +39,7 @@ class ApiDataSourceConfig(BaseModel):
handler_configs: Dict[str, Dict[str, Any]] = Field(default_factory=dict)
DataSourceConfig = Annotated[Union[JsonlDataSourceConfig, ApiDataSourceConfig], Field(discriminator="type")]
DataSourceConfig = Annotated[
Union[JsonlDataSourceConfig, DbDataSourceConfig, ApiDataSourceConfig],
Field(discriminator="type"),
]