I actually wrote this project about a year and a half ago, but I never mentioned it anywhere. It's mostly for me, but it has comprehensive documentation and test coverage, so it's suitable for general use, should anyone be interested.
I have a few personal servers to manage and I've long wished for some tooling that's less cumbersome than Ansible, et al. The overwhelming majority of what I need is just copying files and for the rest I'm happy to write a bit of code. Fabsync
is the result.
This is a library, not a framework. It uses a Fabric connection to copy a source directory to a remote destination, like rsync. Additional configuration can be sprinkled throughout the source tree in TOML files, for instance to set user, group and permissions. Render functions can be registered to preprocess selected files in any way you see fit (using a template engine, for example). There are also some quality-of-life features, such as capturing diffs and using tags to select subsets of files for syncing.
I don't have any particular plans for the project beyond its present state, but feel free to reach out with thoughts and feedback.
Thanks,
Peter