
Show HN: Wrapping bash calls to rsync in Python - gchamonlive
https://pypi.org/project/sysrsync/
======
gchamonlive
The motivation behind this package came while I was writing a custom deploy
script in python for the company I work. The script had to deal with pulling
changes, compiling code but ultimately it had to reliably deploy code
remotely. A small bug caused near catastrophic damage when I mistakenly
synched a config directory instead of its content, because of this an outdated
database that was mistakenly still operational was used and we lost a couple
of days migrating several hours worth of changes to the correct database.

Looking back, it was quick to issue a fix to the script, but the code looked
dirty and low level, with many calls to subprocess.run with template strings,
all of which were extremely error prone and untestable. I needed therefore a
thoroughly tested module to hide and reliably wrap the shell calls to Rsync we
were doing and that is why I wrote this package.

I was hoping the community would test it out and leave suggestions as to what
could be better implemented, feature ideas as well as test cases I didn't
think of.

Thanks beforehand! I hope this package could also come in handy to other
people. I would be delighted to know I helped!

------
just_myles
Anybody having an install issue with python 3.7?

~~~
gchamonlive
thanks for letting me know.

a subpackage was missing a `__init__.py` which didn't show neither in
development nor in running `python setup.py install --user`. I guess I should
have experimented with pip, lesson learned!

it should be ok to install now, if you could give it another chance

~~~
just_myles
Thanks for the update. Installed correctly. Can't wait to try it out.

~~~
gchamonlive
Cool, let me know what you think!

