blob: b6458b238af9f4f0aaa38ace26294d492f4ab8ec (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
from typing import Set, Union
from pydantic import BaseModel, ConfigDict, DirectoryPath, Field
class ConfigModel(BaseModel):
model_config = ConfigDict(extra="allow")
__config_name__: str = ""
class LogConfig(ConfigModel):
level: Union[str, int] = "DEBUG"
verbose_exception: bool = False
class CoreConfig(ConfigModel):
rules: Set[str] = Field(default_factory=set)
rule_dirs: Set[DirectoryPath] = Field(default_factory=set)
log: LogConfig = LogConfig()
class RuleConfig(ConfigModel):
"""rule configuration."""
class MainConfig(ConfigModel):
core: CoreConfig = CoreConfig()
rule: RuleConfig = RuleConfig()
|