Open m3nu opened 3 years ago
Hello @m3nu , do you need help for this ? I started implement this option
Any help is welcome to get improvements launched quicker and eventually add more active maintainers.
Any news on this feature, I'd love to have it as I am frequently saving to several HDD at once :)
Should this start with supporting only archive creation with multiple repositories, and then expand to handling other commands with multiple repositories (might need to discuss designs in that case)? here's how Borgmatic works with rlist:
Vorta could handle this by adding a column to the archive table with the repo name. Or it could use multiple repositories for creating archives and a single repository for all other stuff (select repo in the archive tab to list its archive etc.)
If we end up using multiple repositories for every command Vorta runs, maybe this could also be a good long GSoC task?
How does borgmatic
handle this?
They just run the same backup command (same source folders) against different repos. In our case it would add multiple BorgCreate jobs. We already have the internal job queue you added some time ago. Would it be enough to add multiple jobs there? May need small changes to specify the repo.
internal job queue you added some time ago
Actually @bastiencyr implemented it.
Would it be enough to add multiple jobs there?
That should work.
This feature is more difficult to tackle than it looks. You can see my old PR about this feature at https://github.com/borgbase/vorta/pull/1005.
At this time, I didn't have the job queue and I realized that is was nearly impossible to implement this feature without it.
But there are still some issues and considerations to have :
I probably forgot some points. All the UX had been made to handle only one repo. Changing this has impact through a lot of parts of the application. So, you need to understand many parts of the code.
Edit : The table in the database permits to perform a many to many relationship. A profile can have many repos and a repos can belong to many profiles. But maybe a one to many relation is enough. In this case the migration is easier.
- For the archive, you also need to add a combo box to select the repo
There are a lot of open questions on how to handle commands other than create
with multiple repos. Especially when they are configurable like prune
.
- You need to add a table in the database (I didn't find other solutions) with all repos.
We already have https://github.com/borgbase/vorta/blob/e0fe766051e521396d7d58f973d1f8002ff749ad/src/vorta/store/models.py#L36
All the UX had been made to handle only one repo.
The user interface might need a complete overhaul for this feature. UX is top priority imo.
Are there any updates on this?
As far as I know, nobody is working on it. If you want to suggest a PR, I can assign the issue to you. I still think checkboxes are a decent way to display this in the UI.
Then let's start out with multiple repos in one profile. For implementation, the repo-dropdown could have checkboxes, like this:
Originally posted by @m3nu in https://github.com/borgbase/vorta/discussions/853#discussioncomment-369636