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

backend-specific configurations #33

Open
NicholasBHubbard opened this issue Feb 18, 2025 · 1 comment
Open

backend-specific configurations #33

NicholasBHubbard opened this issue Feb 18, 2025 · 1 comment

Comments

@NicholasBHubbard
Copy link
Collaborator

For some background please see this comment from PR #24.

To solve this problem, and to ensure the ability to accommodate any filesystem / backup program in the future, we may want to extend the BackendBase abstract class, to add abstract methods such as optional_config_params and required_config_params. The backends could then control what parameters they accept in the user configuration. In the case of btrfs and rsync, they could have their configuration parameters set to src_dir, dst_dir, etc as they currently are. The zfs backend on the other hand could have its configuration parameters set to src_dataset, dst_dataset (optional), etc. This also opens the door to using more features of filesystems / backup tools such as backup compression or encryption if they are provided. One thing to keep in mind is that with this setup, the backend classes would also be responsible for providing parameter validation to the configuration parser.

@NicholasBHubbard
Copy link
Collaborator Author

We should discuss this at our meeting tomorrow, as if we do decide that backend-specific configuration is the way to go then @SkiHatDuckie will be blocked on the configuration code until changes to the BackendBase class are implemented.

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

No branches or pull requests

1 participant