file_manager module
- class file_manager.BackupInfo(backup_id, user_id, created_at, file_count, total_size, backup_type, status, file_path, repo, path, metadata)[מקור]
Bases:
object
מידע על גיבוי
- פרמטרים:
- class file_manager.BackupManager[מקור]
Bases:
object
מנהל גיבויים
- save_backup_bytes(data, metadata)[מקור]
שומר ZIP של גיבוי בהתאם למצב האחסון ומחזיר backup_id או None במקרה כשל.
אם storage==mongo: שומר ל-GridFS עם המטאדטה. אם storage==fs: שומר לקובץ תחת backup_dir.
- save_backup_file(file_path)[מקור]
שומר קובץ ZIP קיים לאחסון היעד (Mongo/FS) ומחזיר backup_id אם הצליח.
- list_backups(user_id)[מקור]
מחזירה רשימת קבצי ZIP ששייכים למשתמש המבקש בלבד.
כל פריט חייב להיות מסווג כשייך ל-user_id דרך אחד מהבאים: - metadata.json בתוך ה-ZIP עם שדה user_id תואם - דפוס מזהה בשם: backup_<user_id>_*
ZIPים ללא שיוך ברור למשתמש לא ייכללו כדי למנוע זליגת מידע.
- Return type:
- פרמטרים:
user_id (int)
- restore_from_backup(user_id, backup_path, overwrite=True, purge=False, extra_tags=None)[מקור]
משחזר קבצים מ-ZIP למסד הנתונים. :rtype:
Dict
[str
,Any
]purge=True: מסמן את כל הקבצים הקיימים של המשתמש כלא פעילים לפני השחזור
overwrite=True: שמירה תמיד כגרסה חדשה עבור אותו שם (כברירת מחדל)
החזרה: dict עם restored_files ו-errors