Girish Ramakrishnan
a01e1bad0f
backuptarget: pseudo target for import and restore
2025-08-02 00:06:47 +02:00
Girish Ramakrishnan
7192439b2c
no need for format specific getBackupFilePath
2025-08-01 20:49: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
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
fc4da4408c
backups: fix app restore with tgz
2025-07-25 13:39:09 +02:00
Girish Ramakrishnan
59aaabecc7
backups: the get route was accidentally removed
2025-07-25 11:56:31 +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
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
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
6c1045c545
error installationState is in the error details
2025-07-23 15:31:25 +02:00
Girish Ramakrishnan
48559d3358
tasks: distinguish runtime crash vs task error in worker
2025-07-18 20:02:06 +02:00
Girish Ramakrishnan
7e0803c4b4
clean up task locks
2025-07-18 18:12:07 +02:00
Girish Ramakrishnan
0fa281083e
apps: backup is not a state anymore
...
this is launched as a separate task
2025-07-18 14:14:54 +02:00
Girish Ramakrishnan
989d843fcb
shell: make shell.sudo promise based and waitable
2025-07-16 22:04:24 +02:00
Girish Ramakrishnan
313256adff
use @cloudron/manifest-format
2025-07-10 11:17:04 +02:00
Girish Ramakrishnan
6f4a3701e7
apps: clear updateInfo on successful submit
2025-06-26 17:08:14 +02:00
Girish Ramakrishnan
19c9d7d59d
updateInfo: move updateInfo into apps table
...
this has many advantages:
* easy to deliver the updateInfo via the apps object
* after updating, the task can clear it
* when apps are deleted, the info is automatically gone
otherwise, it's a mess of deps between apps/updater/apptask/rest routes
box update info is still in a file
2025-06-26 15:47:15 +02:00
Girish Ramakrishnan
abd640d36b
merge updatechecker into updater
2025-06-26 14:00:30 +02:00
Girish Ramakrishnan
84297ff473
updater: move app update logic and attach the manual update reason
2025-06-20 22:08:02 +02:00
Girish Ramakrishnan
d7fdfd6d71
attach app updateInfo to app object
2025-06-20 18:51:12 +02:00
Girish Ramakrishnan
c44926c2cd
redis: disable by default when optional
...
this simply increases complexity of local setups since redis is
only used as a cache and not for persistent data
2025-06-14 10:40:48 +02:00
Girish Ramakrishnan
811cc9c028
turn: reduce the exposed ports to 100
2025-06-04 13:23:47 +02:00
Girish Ramakrishnan
c0f0084e56
metrics: add stream api for system info
2025-05-21 18:09:02 +02:00
Johannes Zellner
b8dcfcf900
Remove app purchase/unpurchase
2025-05-13 11:46:13 +02:00
Girish Ramakrishnan
3d31f73453
add missing await
2025-02-17 18:38:20 +01:00
Girish Ramakrishnan
bd5ecf358a
tests: tests for underscore
2025-02-13 14:51:51 +01:00
Girish Ramakrishnan
dd5e4adc73
replace underscore with our own
...
we only need like 5 simple functions
2025-02-13 14:14:34 +01:00
Girish Ramakrishnan
7e1fbb3017
groups: add appIds field to groups object
2025-02-12 13:07:41 +01:00
Girish Ramakrishnan
5c605be45c
isBase64 check is redundant
...
As long as it is a string and even if you throw in some garbage, it returns
an empty buffer.
> b = Buffer.from('!@#%%^@', 'base64')
<Buffer >
2025-02-10 14:58:36 +01:00
Girish Ramakrishnan
230599417e
restore: fix crash with invalid backup id
2025-01-20 13:51:55 +01:00
Girish Ramakrishnan
cd8be9ffb5
archive: appConfig is null for pre-8.2 backups
...
use backups.manifest when possible instead
2024-12-19 15:21:33 +01:00
Girish Ramakrishnan
68431ae357
rename functions to avoid mistakes
...
the remove fields are not clear enough. we sent notes by mistake to
normal users. changing the name and passing role as the argument
will avoid these errors
2024-12-19 12:24:08 +01:00
Girish Ramakrishnan
ba6ba44955
use enum for access levels
2024-12-19 12:24:08 +01:00
Girish Ramakrishnan
3b101a2086
remove spurious comment
2024-12-19 12:24:08 +01:00
Girish Ramakrishnan
cbd32e7372
apps: non-admins cannot see notes, checklist and enableBackup
2024-12-19 11:35:20 +01:00
Girish Ramakrishnan
449dd4730f
archive: return the id in archive route
2024-12-17 14:33:36 +01:00
Girish Ramakrishnan
746e694d7e
notifications: rename alert to pin and unpin
2024-12-11 17:31:32 +01:00
Girish Ramakrishnan
ead419003b
notifications: rename ALERT_ to TYPE_
2024-12-11 15:29:20 +01:00
Girish Ramakrishnan
65f507bc75
clone: read custom icon from downloaded backup
...
the backups table does not have icon to save space. only the
archives table has it for the moment.
2024-12-10 22:47:21 +01:00
Girish Ramakrishnan
05d6484d27
clone: label should be from dolly
2024-12-10 21:07:59 +01:00
Girish Ramakrishnan
41bc08a07e
backup: move appConfig to backups table
...
this is useful for clone also to copy notes, operators, checklist
of the time when the backup was made (as opposed to current)
at this point, it's not clear why we need a archives table. it's
an optimization to not have to store icon for every backup.
2024-12-10 21:04:37 +01:00
Girish Ramakrishnan
41b302b0b9
apps: unarchive can call add() on it's own
...
all this because the sso flag is not allowed with optionalSso :/
2024-12-10 19:09:29 +01:00
Girish Ramakrishnan
fbe334e7d7
install/unarchive: add support for various fields
2024-12-10 18:39:16 +01:00
Girish Ramakrishnan
9a155491cb
move unarchive to apps model
2024-12-10 17:19:12 +01:00
Girish Ramakrishnan
ab8ec07f2f
clone/unarchive: handle notes and checklist
2024-12-10 17:16:06 +01:00
Girish Ramakrishnan
3e1c886b17
clone: copy devices
2024-12-10 16:49:25 +01:00