Initial commit: CloudRestoreAS v1.0.0 - Aplicación completa de restauración automática SQL Server
This commit is contained in:
82
app/constants.py
Normal file
82
app/constants.py
Normal file
@@ -0,0 +1,82 @@
|
||||
"""Constantes globales de la aplicación."""
|
||||
|
||||
from pathlib import Path
|
||||
|
||||
# Rutas base
|
||||
APP_DIR = Path(__file__).parent.parent
|
||||
DATA_DIR = APP_DIR / "data"
|
||||
LOGS_DIR = APP_DIR / "logs"
|
||||
|
||||
# Base de datos
|
||||
DB_PATH = DATA_DIR / "app.db"
|
||||
|
||||
# Estados de jobs
|
||||
class JobStatus:
|
||||
QUEUED = "queued"
|
||||
EXTRACTING = "extracting"
|
||||
RESTORING = "restoring"
|
||||
CLEANING = "cleaning"
|
||||
COMPLETED = "completed"
|
||||
FAILED = "failed"
|
||||
FAILED_RESTART = "failed_restart"
|
||||
CANCELLED = "cancelled"
|
||||
|
||||
# Niveles de log
|
||||
class LogLevel:
|
||||
DEBUG = "DEBUG"
|
||||
INFO = "INFO"
|
||||
WARNING = "WARNING"
|
||||
ERROR = "ERROR"
|
||||
CRITICAL = "CRITICAL"
|
||||
|
||||
# Tipos de paso de job
|
||||
class StepType:
|
||||
STABILITY_CHECK = "stability_check"
|
||||
NODE_MAPPING = "node_mapping"
|
||||
EXTRACT = "extract"
|
||||
LOCATE_BAK = "locate_bak"
|
||||
SQL_CONNECT = "sql_connect"
|
||||
FILELIST = "filelist"
|
||||
RESTORE = "restore"
|
||||
CLEANUP = "cleanup"
|
||||
|
||||
# Configuración por defecto
|
||||
DEFAULT_CONFIG = {
|
||||
"paths": {
|
||||
"input_folder": "",
|
||||
"processed_folder": "",
|
||||
"failed_folder": "",
|
||||
"extract_folder": "",
|
||||
"data_sql_folder": "",
|
||||
"seven_zip_exe": ""
|
||||
},
|
||||
"sql": {
|
||||
"server": "localhost",
|
||||
"use_windows_auth": True,
|
||||
"username": "",
|
||||
"password_encrypted": ""
|
||||
},
|
||||
"concurrency": {
|
||||
"extract_workers": 1,
|
||||
"restore_workers": 1
|
||||
},
|
||||
"stability": {
|
||||
"check_enabled": True,
|
||||
"check_interval_seconds": 5,
|
||||
"stable_duration_seconds": 10,
|
||||
"use_ready_marker": False
|
||||
},
|
||||
"timeouts": {
|
||||
"extract_minutes": 30,
|
||||
"restore_minutes": 60
|
||||
},
|
||||
"retries": {
|
||||
"max_attempts": 3,
|
||||
"retry_delay_seconds": 60
|
||||
},
|
||||
"features": {
|
||||
"dry_run_mode": False,
|
||||
"auto_scan_enabled": True,
|
||||
"scan_interval_seconds": 30
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user