diff options
author | Ellie Huxtable <ellie@elliehuxtable.com> | 2024-02-02 15:05:07 +0000 |
---|---|---|
committer | Ellie Huxtable <ellie@elliehuxtable.com> | 2024-02-02 18:01:09 +0000 |
commit | c9a453289e2fea97b5ac17e265f99332edcdcd4c (patch) | |
tree | e51eb1f7d2fd3b44fabf2c1260802232fa0367b2 /atuin-server-database | |
parent | 3c420f85f69771db269c015ead8e1678a4ad6899 (diff) |
feat: add `store push --force`
This will
1. Wipe the remote store
2. Upload all of the local store to remote
Imagine the scenario where you end up with some mixed keys locally :(
You confirm this with
```
atuin store verify
```
You then fix it locally with
```
atuin store purge
```
Ensure that your local changes are reflected remotely with
```
atuin store push --force
```
and then (another PR, coming soon), update all other hosts with
```
atuin store pull --force
```
Diffstat (limited to 'atuin-server-database')
-rw-r--r-- | atuin-server-database/src/lib.rs | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/atuin-server-database/src/lib.rs b/atuin-server-database/src/lib.rs index dff1204d0..d2c16b3de 100644 --- a/atuin-server-database/src/lib.rs +++ b/atuin-server-database/src/lib.rs @@ -53,15 +53,16 @@ pub trait Database: Sized + Clone + Send + Sync + 'static { async fn get_user(&self, username: &str) -> DbResult<User>; async fn get_user_session(&self, u: &User) -> DbResult<Session>; async fn add_user(&self, user: &NewUser) -> DbResult<i64>; - async fn delete_user(&self, u: &User) -> DbResult<()>; async fn update_user_password(&self, u: &User) -> DbResult<()>; async fn total_history(&self) -> DbResult<i64>; async fn count_history(&self, user: &User) -> DbResult<i64>; async fn count_history_cached(&self, user: &User) -> DbResult<i64>; + async fn delete_user(&self, u: &User) -> DbResult<()>; async fn delete_history(&self, user: &User, id: String) -> DbResult<()>; async fn deleted_history(&self, user: &User) -> DbResult<Vec<String>>; + async fn delete_store(&self, user: &User) -> DbResult<()>; async fn add_records(&self, user: &User, record: &[Record<EncryptedData>]) -> DbResult<()>; async fn next_records( |