Commit 21cf4b5
committed
feat(backups): add SFTP and FTP backup destination types
Add support for SFTP and FTP as backup destination types alongside
existing S3 compatible storage. Uses rclone's native backends.
Changes:
- Add destinationType column to destination schema with migration
- Add getRcloneFlags() and getRcloneRemote() to centralize rclone
command generation for all destination types
- Passwords are obscured via rclone obscure before storage
- Shell-escape user inputs to prevent command injection
- Update all backup, restore, and volume-backup modules
- Add destination type selector in UI with conditional form fields
- Add conditional validation (S3 fields required for S3, host/username
required for SFTP/FTP)
- Show destination type badge in destination list
Fixes #1681 parent ddfcd1a commit 21cf4b5
File tree
27 files changed
+8927
-260
lines changed- apps/dokploy
- components/dashboard/settings/destination
- drizzle
- meta
- server/api/routers
- packages/server/src
- db/schema
- utils
- backups
- restore
- volume-backups
27 files changed
+8927
-260
lines changedLines changed: 376 additions & 159 deletions
Large diffs are not rendered by default.
Lines changed: 8 additions & 3 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
24 | 24 | | |
25 | 25 | | |
26 | 26 | | |
27 | | - | |
| 27 | + | |
28 | 28 | | |
29 | 29 | | |
30 | | - | |
31 | | - | |
| 30 | + | |
| 31 | + | |
32 | 32 | | |
33 | 33 | | |
34 | 34 | | |
| |||
60 | 60 | | |
61 | 61 | | |
62 | 62 | | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
63 | 68 | | |
64 | 69 | | |
65 | 70 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
0 commit comments