Consolidates scattered configuration patterns across TDDAI, Gitea, and MarkiTect into a unified, maintainable system addressing issue #22. Key improvements: - Created centralized config/ module with base classes and utilities - Eliminated duplicate load_dotenv_file() functions - Standardized environment variables with MARKITECT_ prefix - Implemented comprehensive validation with helpful error messages - Maintained full backward compatibility with existing TDDAI config Architecture: - BaseConfig: Abstract base with common functionality - MarkitectConfig: Main configuration class with legacy support - Compatibility layer: TddaiConfigCompat and GiteaConfigCompat wrappers - Unified error handling: ConfigurationError hierarchy All existing tests pass without modification, ensuring seamless transition. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
42 lines
1.2 KiB
Python
42 lines
1.2 KiB
Python
"""
|
|
Unified configuration management for MarkiTect project.
|
|
|
|
This module provides a centralized configuration system that consolidates
|
|
scattered configuration patterns across TDDAI, Gitea, MarkiTect, and other modules.
|
|
|
|
Main exports:
|
|
- BaseConfig: Base configuration class with common functionality
|
|
- ConfigurationError: Unified configuration exception
|
|
- load_env_file: Utility for loading environment files
|
|
- get_unified_config: Main configuration access point
|
|
"""
|
|
|
|
from .base import BaseConfig
|
|
from .exceptions import ConfigurationError, ConfigValidationError
|
|
from .loaders import load_env_file, resolve_path
|
|
from .manager import UnifiedConfigManager, get_unified_config, MarkitectConfig, reload_config, get_config_status
|
|
from .compat import TddaiConfigCompat, GiteaConfigCompat, get_tddai_config, get_gitea_config
|
|
|
|
__all__ = [
|
|
# Core configuration
|
|
'BaseConfig',
|
|
'MarkitectConfig',
|
|
'UnifiedConfigManager',
|
|
'get_unified_config',
|
|
'reload_config',
|
|
'get_config_status',
|
|
|
|
# Exceptions
|
|
'ConfigurationError',
|
|
'ConfigValidationError',
|
|
|
|
# Utilities
|
|
'load_env_file',
|
|
'resolve_path',
|
|
|
|
# Compatibility layer
|
|
'TddaiConfigCompat',
|
|
'GiteaConfigCompat',
|
|
'get_tddai_config',
|
|
'get_gitea_config'
|
|
] |