Girish Ramakrishnan
53e9925880
backups: make id, provider a backend specific setting
...
the backend can stash whatever values it wants in the config.
just like the DNS backends, we make verifyConfig return a sanitized config.
added benefit is that extra user fields (via API) are also not dumped into the db.
2025-08-01 18:55:04 +02:00
Girish Ramakrishnan
9dfe6242b9
mounts: rename name to description
...
this makes it clear that the field is not important
2025-08-01 15:48:11 +02:00
Girish Ramakrishnan
ea419509f1
backups: add setup/teardown
...
1. add setup, teardown hooks
2. move the managed mount setup and teardown to filesystem backend
3. remove this vague storage.js
we should convert storageApi into a real object, so we don't have to
keep passing apiConfig around
2025-08-01 15:36:25 +02:00
Girish Ramakrishnan
a1a683ec56
import: use inPlace flag
2025-08-01 13:22:12 +02:00
Girish Ramakrishnan
dbe3b6a427
Update package lock
2025-08-01 12:58:36 +02:00
Girish Ramakrishnan
e8bd4d05b5
Update dashboard packages
2025-08-01 12:54:42 +02:00
Girish Ramakrishnan
1fb0ed9545
port bindings: use enabledByDefault
2025-08-01 12:20:45 +02:00
Girish Ramakrishnan
ea464bdc7d
update modules
2025-08-01 12:14:32 +02:00
Johannes Zellner
d1c2d0b907
Move schedule and retention settings back to a separate dialog
2025-07-31 18:18:27 +02:00
Johannes Zellner
175b2914b6
Make basic backup target add and edit work
2025-07-31 17:25:31 +02:00
Johannes Zellner
a2c86daef6
Remove now unused AppArchive component
2025-07-31 14:37:32 +02:00
Johannes Zellner
b40248a1d5
Create separate views for backup targets and archives
2025-07-31 11:51:45 +02:00
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