feat: punkt 6 (backup) — ARQ cron job, backup config in settings, backup-now trigger, backup history, migration 0130

This commit is contained in:
Agent Zero
2026-08-20 13:47:35 +02:00
parent 9a20ae5528
commit 10b1f83fb3
11 changed files with 900 additions and 17 deletions
+62 -1
View File
@@ -1328,5 +1328,66 @@
"preview": "Vorschau",
"split": "Geteilt",
"writeLabel": "Markdown-Inhalt"
},
"backup": {
"title": "Backup & Restore",
"subtitle": "Erstellen und verwalten Sie Datenbank-Backups",
"createBtn": "Backup jetzt erstellen",
"createFirst": "Erstes Backup erstellen",
"loadError": "Fehler beim Laden der Backups.",
"createError": "Fehler beim Erstellen des Backups.",
"restoreError": "Fehler bei der Wiederherstellung.",
"empty": "Noch keine Backups vorhanden.",
"date": "Datum",
"filename": "Dateiname",
"size": "Größe",
"status": "Status",
"statusPending": "Wird erstellt...",
"statusCompleted": "Abgeschlossen",
"statusFailed": "Fehlgeschlagen",
"restoreTitle": "Backup wiederherstellen",
"restoreWarningTitle": "Achtung: Destruktiver Vorgang",
"restoreWarningText": "Die Wiederherstellung überschreibt die aktuelle Datenbank vollständig. Alle seit dem Backup vorgenommenen Änderungen gehen verloren. Dieser Vorgang kann nicht rückgängig gemacht werden.",
"restoreFile": "Backup-Datei:",
"restoreDate": "Erstellt am:",
"restoreSize": "Größe:",
"restoreConfirmLabel": "Geben Sie \"RESTORE\" ein, um zu bestätigen:",
"restoreBtn": "Wiederherstellen",
"restoreLabel": "Backup wiederherstellen",
"deleteTitle": "Backup löschen",
"deleteConfirm": "Möchten Sie das Backup",
"deleteConfirmEnd": "wirklich löschen?",
"deleteWarning": "Die Backup-Datei wird dauerhaft entfernt.",
"deleteLabel": "Backup löschen",
"configTitle": "Backup-Automatisierung",
"configSubtitle": "Konfigurieren Sie automatische Backups",
"configEnabled": "Automatische Backups aktiviert",
"configEnabledDesc": "Aktiviert geplante Backups über den ARQ Worker",
"configInterval": "Intervall",
"configIntervalDesc": "Wie oft Backups erstellt werden",
"configRetention": "Aufbewahrung (Tage)",
"configRetentionDesc": "Anzahl der Tage, die Backups aufbewahrt werden",
"configDestination": "Ziel",
"configDestinationDesc": "Wo Backups gespeichert werden",
"configSave": "Konfiguration speichern",
"configSaved": "Konfiguration gespeichert",
"configSaveError": "Fehler beim Speichern der Konfiguration",
"backupNow": "Backup jetzt ausführen",
"backupNowSuccess": "Backup-Auftrag gestartet",
"backupNowError": "Fehler beim Starten des Backups",
"historyTitle": "Backup-Historie",
"historyEmpty": "Noch keine Backup-Historie vorhanden.",
"historyDate": "Datum",
"historyStatus": "Status",
"historyDestination": "Ziel",
"historyError": "Fehler",
"interval6h": "Alle 6 Stunden",
"interval12h": "Alle 12 Stunden",
"interval24h": "Täglich (24 Stunden)",
"interval48h": "Alle 48 Stunden",
"intervalWeekly": "Wöchentlich",
"destLocal": "Lokal",
"destS3": "S3",
"destNextcloud": "Nextcloud"
}
}
}
+62 -1
View File
@@ -1328,5 +1328,66 @@
"preview": "Preview",
"split": "Split",
"writeLabel": "Markdown content"
},
"backup": {
"title": "Backup & Restore",
"subtitle": "Create and manage database backups",
"createBtn": "Create Backup Now",
"createFirst": "Create First Backup",
"loadError": "Failed to load backups.",
"createError": "Failed to create backup.",
"restoreError": "Failed to restore backup.",
"empty": "No backups yet.",
"date": "Date",
"filename": "Filename",
"size": "Size",
"status": "Status",
"statusPending": "In progress...",
"statusCompleted": "Completed",
"statusFailed": "Failed",
"restoreTitle": "Restore Backup",
"restoreWarningTitle": "Warning: Destructive Operation",
"restoreWarningText": "Restoring will completely overwrite the current database. All changes made since the backup will be lost. This operation cannot be undone.",
"restoreFile": "Backup file:",
"restoreDate": "Created on:",
"restoreSize": "Size:",
"restoreConfirmLabel": "Type \"RESTORE\" to confirm:",
"restoreBtn": "Restore",
"restoreLabel": "Restore backup",
"deleteTitle": "Delete Backup",
"deleteConfirm": "Do you want to delete backup",
"deleteConfirmEnd": "?",
"deleteWarning": "The backup file will be permanently removed.",
"deleteLabel": "Delete backup",
"configTitle": "Backup Automation",
"configSubtitle": "Configure automatic backups",
"configEnabled": "Automatic backups enabled",
"configEnabledDesc": "Enables scheduled backups via ARQ Worker",
"configInterval": "Interval",
"configIntervalDesc": "How often backups are created",
"configRetention": "Retention (days)",
"configRetentionDesc": "Number of days to keep backups",
"configDestination": "Destination",
"configDestinationDesc": "Where backups are stored",
"configSave": "Save Configuration",
"configSaved": "Configuration saved",
"configSaveError": "Failed to save configuration",
"backupNow": "Run Backup Now",
"backupNowSuccess": "Backup job started",
"backupNowError": "Failed to start backup",
"historyTitle": "Backup History",
"historyEmpty": "No backup history yet.",
"historyDate": "Date",
"historyStatus": "Status",
"historyDestination": "Destination",
"historyError": "Error",
"interval6h": "Every 6 hours",
"interval12h": "Every 12 hours",
"interval24h": "Daily (24 hours)",
"interval48h": "Every 48 hours",
"intervalWeekly": "Weekly",
"destLocal": "Local",
"destS3": "S3",
"destNextcloud": "Nextcloud"
}
}
}