Commit Graph

18621 Commits

Author SHA1 Message Date
Girish Ramakrishnan ae3a34287a backup target: create snapshot and cache files per target
snapshot file tracks the snapshot directory. when app gets deleted,
the cleaner will remove the upstream snapshot directory when it runs.

cache files are used in rsync logic to track what was uploading into
snapshot in the previous run without needing to rescan upstream.
2025-07-30 11:44:42 +02:00
Girish Ramakrishnan b971f2ab22 Fix tests 2025-07-28 13:11:57 +02:00
Girish Ramakrishnan cbc73f5c9a remove uuid module
built into node.js now
2025-07-28 12:54:09 +02:00
Girish Ramakrishnan 373ef5b7e1 import: make the ui work again 2025-07-28 12:12:43 +02:00
Girish Ramakrishnan 89388940ed backups: make backup download config work 2025-07-28 11:18:02 +02:00
Girish Ramakrishnan b2c94adabf cron: fix cleanup task 2025-07-25 14:54:51 +02:00
Girish Ramakrishnan 3904f50c1b locks: make full backup use a prefix 2025-07-25 14:46:55 +02:00
Girish Ramakrishnan d81fa897ad apptask: use primary target during update 2025-07-25 14:32:22 +02:00
Girish Ramakrishnan a0792aa469 backups: make sure reused error backup is in same target 2025-07-25 14:06:35 +02:00
Girish Ramakrishnan 5be03c7ab5 backups: fix app restore with rsync 2025-07-25 13:49:37 +02:00
Girish Ramakrishnan fc4da4408c backups: fix app restore with tgz 2025-07-25 13:39:09 +02:00
Girish Ramakrishnan 83ab701d02 eventlog: add backup target eventlog 2025-07-25 12:23:41 +02:00
Girish Ramakrishnan 59aaabecc7 backups: the get route was accidentally removed 2025-07-25 11:56:31 +02:00
Girish Ramakrishnan 3f07bb5c3a backup targets: add test for all routes 2025-07-25 11:29:00 +02:00
Girish Ramakrishnan 94dd1eb0c2 backups: add setPrimary route 2025-07-25 09:43:26 +02:00
Girish Ramakrishnan 07ab079715 test: fix the archives test 2025-07-25 09:14:17 +02:00
Girish Ramakrishnan d559df3ee3 system: take multiple backup targets into account 2025-07-25 08:45:11 +02:00
Girish Ramakrishnan 69cd766f88 backups: run cron schedule per target 2025-07-25 08:36:09 +02:00
Girish Ramakrishnan 276db17f0c backups: use a real targetId 2025-07-25 08:12:27 +02:00
Girish Ramakrishnan cfce39c1de backups: no need to track taskId, we track it in task.type+prefix 2025-07-25 07:41:48 +02:00
Girish Ramakrishnan ef5631bff4 backups: setPolicy is gone 2025-07-25 01:42:25 +02:00
Girish Ramakrishnan 62017b3ff5 backup: rename back backuplisting.js to backups.js
this was a transitional rename till I figured out how to split
it in backuptargets.js
2025-07-25 01:37:19 +02:00
Girish Ramakrishnan 3aafbd2ccb backups: add backup multiple targets 2025-07-25 01:30:27 +02:00
Girish Ramakrishnan 100bea981d constants: rename AUTOUPDATE_PATTERN_NEVER to CRON_PATTERN_NEVER 2025-07-24 21:47:46 +02:00
Girish Ramakrishnan 931311f11f rename backups to backuptargets 2025-07-24 18:54:10 +02:00
Girish Ramakrishnan 5e456f378b backups: split listing and targets 2025-07-24 18:21:48 +02:00
Girish Ramakrishnan bf315258c5 backups: add target foreign key to backups table
format is part of the backup target

in the future, if we want per-app format or schedule, we can add this
separately to the apps table itself. the full box backup can ignore
apps with a set backup target and use the latest backup (like an errored app).
the nice thing is restore will work correctly.
2025-07-24 17:32:16 +02:00
Girish Ramakrishnan 9780db6fa0 add backup targets table 2025-07-24 17:32:16 +02:00
Johannes Zellner 6d0a24cc95 Update postgres addon to support vectorchord 0.3.0 2025-07-24 16:45:08 +02:00
Girish Ramakrishnan 1a3d6e86a8 sudo: alway run in non-interactive 2025-07-24 14:42:31 +02:00
Johannes Zellner 4f5efef922 Remove the app repair dialog in favor of just a simple button to trigger repair 2025-07-24 11:49:26 +02:00
Johannes Zellner ff269d414e Allow configuring volumes if we got a task error there 2025-07-24 11:44:29 +02:00
Johannes Zellner c3e746aa74 Allow to redo the update if the app task failed 2025-07-24 11:35:50 +02:00
Johannes Zellner 511047874e Disable app backup on app task error 2025-07-24 10:49:27 +02:00
Johannes Zellner 47e40fc762 Allow to toggle debug mode on debug task failure 2025-07-24 10:09:24 +02:00
Johannes Zellner 27c113d8ae Allow to reconfigure app data dir if task failed 2025-07-23 17:39:44 +02:00
Johannes Zellner c082f2a1b1 If app clone fails only uninstall is possible 2025-07-23 17:33:42 +02:00
Johannes Zellner 12f7a3fca0 Allow to resubmit app email settings if service task failed 2025-07-23 17:31:56 +02:00
Johannes Zellner 88d66dee6e Hide help popover on mobile 2025-07-23 17:22:25 +02:00
Johannes Zellner 3460e6d513 Allow to reconfigure services if task fails 2025-07-23 17:18:26 +02:00
Johannes Zellner 1831caea08 Also prevent accessing graph tooltip DOM elements if they are gone 2025-07-23 17:07:49 +02:00
Johannes Zellner b88885582d Do not access graph DOM elements if view was already destroyed 2025-07-23 17:05:59 +02:00
Johannes Zellner 66650d6dd9 Handle resubmission state for app devices errors 2025-07-23 16:51:04 +02:00
Johannes Zellner 0b65f07960 Allow resubmission of memory and cpu resources on resource task error 2025-07-23 16:40:06 +02:00
Johannes Zellner b14e6a7860 Do not use repair route to fixup start/stop errors 2025-07-23 16:07:32 +02:00
Johannes Zellner 68a8c964ea If we have app.error we always have an app.error.details object 2025-07-23 15:40:25 +02:00
Johannes Zellner f03ac0133f Allow to resubmit location info on pending location change task failure 2025-07-23 15:38:02 +02:00
Johannes Zellner 6c1045c545 error installationState is in the error details 2025-07-23 15:31:25 +02:00
Johannes Zellner 0cdfd5e62b Remove stray console.log 2025-07-23 13:31:17 +02:00
Johannes Zellner a839638478 Remove app start/stop button from toolbar 2025-07-23 13:16:13 +02:00