Viewing file: 061_migrate_backup_system_conf.py (1.32 KB) -rw-r--r-- Select action/file-type: (+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
""" Migrate backup config from user oriented config file to the separate internal file """ import os from typing import Optional
from defence360agent.contracts.config import ( BackupConfig, IConfig, IConfigFile, LocalConfig, ) from defence360agent.utils import antivirus_mode
@antivirus_mode.skip def migrate( migrator, database, fake=False, config_file: IConfig = LocalConfig(), backup_config_file: Optional[IConfigFile] = None, **kwargs, ): if fake: return if backup_config_file is None: backup_config_file = BackupConfig()
if not (config_from := config_file.config_to_dict()): return
# Do not overwrite existing config file if os.path.exists(backup_config_file.path): return backup_conf_current = config_from.get("BACKUP_RESTORE", {}) config_to = { "BACKUP_SYSTEM": { "enabled": backup_conf_current.pop("enabled", False), "backup_system": backup_conf_current.pop("backup_system", None), } } backup_config_file.dict_to_config( config_to, overwrite=True, validate=False ) config_file.dict_to_config(config_from, overwrite=True, validate=False)
@antivirus_mode.skip def rollback(migrator, database, fake=False, **kwargs): """Write your rollback migrations here.""" pass
|