Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Draft: Add ability to backup recursively #73

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

bLuka
Copy link

@bLuka bLuka commented Sep 12, 2023

Add a flag to enable recursive backup, effectively uploading nested chilren filesystems recursively (being ZFS datasets and volumes).

Follows the late feature request #65.

I’m opening this draft to collect early reviews and suggestions. I’m especially interested in reviews regarding the coding style and implementation logic :-)

TODO

  • Add automated testing around list_children(filesystem)
  • Run manual testing over a real world use case

Typical use cases

I require the feature as I use Docker’s ZFS storage driver leading me to 300+ ZFS datasets I’d like to snapshot, on top of the base hundred I have on my pool.

Open questions

Those are questions this new feature raise, and feature ideas that might come up in future PRs. I’m wondering if those are really useful, if they get decent alternatives, and/or if they’re worth the extra complexity.

1. Should a removed filesystem (e.g. a removed Docker volume) lead to garbage collection on the remote backup storage?

It might be great to get a command such as zfsup cleanup -f removing old and locally removed filesystems as a cron schedule for instance. Might be useful in some very specific cases.

2. Should we add an except option to pick recursively all filesystems but a few ones?

I’m thinking of a recursive backup of all datasets but a few ones, such as temporary files or big datasets (e.g. for datasets such as /tmp and games someone don’t wish to backup, but would like to backup every other ones). Without the except feature, I believe that would prevent from using a higher-level recursive backups there.

Add a flag to enable recursive backup, effectively uploading nested
chilren filesystems recursively (being ZFS datasets and volumes).

Follows the late feature request ddebeau#65.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant