Enable backup creation and restoration from Rust
Summary: This differential provides boilerplate code so that we can call BackupOperationsExecutor from Rust.
Test Plan:
- Comment line in DatabaseManager where we remove backup directory on log-out.
- Add call to create_main_compaction in restore_backup in backup.rs
- Add some logging to get encryption key.
- Create some drafts.
- Tap text backup restore protocol button.
- Log out.
- Replace call to create_main_compaction in restore_backup in backup.rs with a call to get_backup_file_path with previous backup id and restore_from_main_compaction with previous backup id and encryption key logged before log-out.
- Tap text backup restore protocol button.
- Restart the app. Ensure that drafts created before log-out are now present.
Reviewers: kamil, michal
Reviewed By: michal
Subscribers: ashoat, tomek
Differential Revision: https://phab.comm.dev/D10512