Spaces:
Paused
Paused
Update config_provider.py
Browse files- config_provider.py +31 -0
config_provider.py
CHANGED
|
@@ -181,6 +181,37 @@ class ConfigProvider:
|
|
| 181 |
cls._check_environment_setup()
|
| 182 |
return cls._instance
|
| 183 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 184 |
@classmethod
|
| 185 |
def _check_environment_setup(cls):
|
| 186 |
"""Check if environment is properly configured based on work_mode"""
|
|
|
|
| 181 |
cls._check_environment_setup()
|
| 182 |
return cls._instance
|
| 183 |
|
| 184 |
+
@classmethod
|
| 185 |
+
def _load(cls) -> ServiceConfig:
|
| 186 |
+
"""Load configuration from service_config.jsonc"""
|
| 187 |
+
try:
|
| 188 |
+
log(f"π Loading config from: {cls._CONFIG_PATH}")
|
| 189 |
+
|
| 190 |
+
if not cls._CONFIG_PATH.exists():
|
| 191 |
+
raise FileNotFoundError(f"Config file not found: {cls._CONFIG_PATH}")
|
| 192 |
+
|
| 193 |
+
with open(cls._CONFIG_PATH, 'r', encoding='utf-8') as f:
|
| 194 |
+
config_data = commentjson.load(f)
|
| 195 |
+
|
| 196 |
+
# Create ServiceConfig instance
|
| 197 |
+
service_config = ServiceConfig(**config_data)
|
| 198 |
+
|
| 199 |
+
log("β
Configuration loaded successfully")
|
| 200 |
+
return service_config
|
| 201 |
+
|
| 202 |
+
except FileNotFoundError as e:
|
| 203 |
+
log(f"β Config file not found: {e}")
|
| 204 |
+
raise
|
| 205 |
+
except json.JSONDecodeError as e:
|
| 206 |
+
log(f"β Invalid JSON in config file: {e}")
|
| 207 |
+
raise
|
| 208 |
+
except ValidationError as e:
|
| 209 |
+
log(f"β Config validation error: {e}")
|
| 210 |
+
raise
|
| 211 |
+
except Exception as e:
|
| 212 |
+
log(f"β Unexpected error loading config: {e}")
|
| 213 |
+
raise
|
| 214 |
+
|
| 215 |
@classmethod
|
| 216 |
def _check_environment_setup(cls):
|
| 217 |
"""Check if environment is properly configured based on work_mode"""
|