Implement backup functionality with UI and backend support
Co-authored-by: Koha9 <36852125+Koha9@users.noreply.github.com>
This commit is contained in:
+24
@@ -144,6 +144,30 @@ class ScheduleSettings(BaseModel):
|
||||
autoWatch: bool
|
||||
|
||||
|
||||
class BackupSettingsPayload(BaseModel):
|
||||
enabled: bool
|
||||
retention_count: int
|
||||
|
||||
|
||||
@app.get("/api/backup/settings")
|
||||
async def get_backup_settings():
|
||||
server_config.load()
|
||||
return {
|
||||
"enabled": server_config.backup_enabled,
|
||||
"retention_count": server_config.backup_retention_count
|
||||
}
|
||||
|
||||
|
||||
@app.put("/api/backup/settings")
|
||||
async def save_backup_settings(settings: BackupSettingsPayload):
|
||||
server_config.set_backup(
|
||||
enabled=settings.enabled,
|
||||
retention_count=settings.retention_count
|
||||
)
|
||||
logger.info(f"Backup settings updated. Enabled: {settings.enabled}, Retention: {settings.retention_count}")
|
||||
return {"status": "success", "message": "Backup settings saved"}
|
||||
|
||||
|
||||
@app.get("/api/schedule")
|
||||
async def get_schedule():
|
||||
next_run = get_next_run_time()
|
||||
|
||||
Reference in New Issue
Block a user