feature/integracion-cpanel-asrecovery
This commit is contained in:
@@ -12,6 +12,7 @@ from .. import __version__
|
||||
from ..db.job_repository import JobRepository
|
||||
from ..db.event_repository import EventRepository
|
||||
from ..db.config_repository import ConfigRepository
|
||||
from ..config.env_loader import apply_env_overrides, load_env_file
|
||||
from ..constants import JobStatus, DEFAULT_CONFIG
|
||||
from ..panel import panel_client
|
||||
from ..utils.logger import app_logger
|
||||
@@ -50,14 +51,15 @@ class RestoreEngine(QObject):
|
||||
app_logger.info("RestoreEngine inicializado")
|
||||
|
||||
def _load_config(self) -> dict:
|
||||
"""Carga la configuración desde la base de datos."""
|
||||
"""Carga la configuración desde la base de datos y variables de entorno."""
|
||||
load_env_file()
|
||||
config = ConfigRepository.get("app_config", DEFAULT_CONFIG.copy())
|
||||
|
||||
# Asegurar que tiene todas las claves
|
||||
|
||||
for key, value in DEFAULT_CONFIG.items():
|
||||
if key not in config:
|
||||
config[key] = value
|
||||
|
||||
|
||||
config = apply_env_overrides(config)
|
||||
self.signals.config_loaded.emit(config)
|
||||
return config
|
||||
|
||||
|
||||
@@ -335,11 +335,17 @@ class RestoreWorker(QRunnable):
|
||||
stderr=stderr[:1000] if stderr else None
|
||||
)
|
||||
|
||||
# Buscar archivo .bak
|
||||
# Buscar archivo .bak. El backup puede venir con terminaciones extra
|
||||
# (p.ej. ".KNOWNWORLD") tanto en el ZIP como en el propio .bak; se
|
||||
# normaliza a "<nodo>.bak". El nodo es siempre el primer segmento del
|
||||
# nombre del archivo de origen.
|
||||
locate_step_id = JobStepRepository.create(self.job_id, StepType.LOCATE_BAK)
|
||||
|
||||
self._bak_path = SevenZipExtractor.find_bak_file(self._extract_dir)
|
||||
|
||||
|
||||
node_base = Path(job.source_name).name.split(".")[0].strip() or None
|
||||
self._bak_path = SevenZipExtractor.find_bak_file(
|
||||
self._extract_dir, node_name=node_base
|
||||
)
|
||||
|
||||
if not self._bak_path:
|
||||
raise FileNotFoundError("No se encontró archivo .bak en el archivo extraído")
|
||||
|
||||
|
||||
Reference in New Issue
Block a user