This commit is contained in:
53
devdocs/specs/core-backup-and-restore.txt
Normal file
53
devdocs/specs/core-backup-and-restore.txt
Normal file
@@ -0,0 +1,53 @@
|
||||
BACKUP AND RESTORE SPECS
|
||||
|
||||
CASES
|
||||
|
||||
|
||||
REQUIREMENTS
|
||||
|
||||
BACKUP
|
||||
- Backup to independent text format using JSON text files like DB DUMP and Discourse does
|
||||
- Backup all attached files (encrypt?)
|
||||
- Encrypt the backup file archive or each file (need to determine) so that the backup file can't be read independent of RAVEN
|
||||
- Encryption key needs to be user selectable because we don't want any AyaNova user to be able to restore any other AyaNova users db
|
||||
|
||||
- Optionally automatically send the backups to online destinations such as
|
||||
- AWS web storage
|
||||
- Dropbox
|
||||
- Mailbox if under certain size
|
||||
- Look into whatever apis are available for other online storage services
|
||||
- Download backups
|
||||
- Backup during closed window where server is not available for anything but read only operations during backup window
|
||||
- User configurable backup time
|
||||
- User configurable encryption key in environment variable? If not set then not encrypted??
|
||||
|
||||
|
||||
|
||||
|
||||
RESTORE
|
||||
- Automatically closes api before RESTORE
|
||||
- Restore from backup locations can save to?
|
||||
- Or at least a method to fetch and list those backups to fetch to local?
|
||||
- Upload a backup file for restoration
|
||||
- Decrypts data during restore process
|
||||
- Must use user provided key and there should be some kind of marker file or something to verify it decrypted properly and is a valid AyaNova backup
|
||||
- Restore the attached files (decrypt?)
|
||||
- Uses user configurable encryption key
|
||||
|
||||
ROLES
|
||||
- Ops ful, biz full can
|
||||
- modify backup configuration
|
||||
- Restore
|
||||
- Backup
|
||||
|
||||
- OpsLImited and biz limited can
|
||||
- view the backup and restore configuration
|
||||
- Backup
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user