Hmm, both strategies have advantages. It'd be great if weewx had the ability to add in rsync options so that if you just wanted to do a single thing, exclude a directory, or maybe conform to a specific non-standard setting on the remote host, then you can easily do that in weewx.
The extension is nice to have to create a full suite of rsync options so people can use it to backup stuff, move stuff, etc. I've created a GitHub issue/request https://github.com/weewx/weewx/issues/951 Thanks to you both. Chris On Tuesday, April 2, 2024 at 8:30:30 AM UTC-7 vince wrote: > Seems complicated. > > I was suggesting something like adding a general purpose 'rsync_options' > variable in that section of weewx.conf, and adding the value to the > assembled rsync command in the run(self) routine in rsyncupload.py ? > Then the user could add any combination of the rsync options to the command > if needed. Perhaps something like the following (untested): > > pi@pi4:/tmp$ diff rsyncupload.py.orig rsyncupload.py -u > --- rsyncupload.py.orig 2024-04-02 08:18:48.311469290 -0700 > +++ rsyncupload.py 2024-04-02 08:19:57.970078706 -0700 > @@ -46,6 +46,7 @@ > self.delete = delete > self.port = port > self.ssh_options = ssh_options > + self.rsync_options = rsync_options # <== new > self.compress = compress > self.log_success = log_success > self.log_failure = log_failure > @@ -96,6 +97,7 @@ > if self.timeout is not None: > cmd.extend(["--timeout=%s" % self.timeout]) > cmd.extend(["-e"]) > + cmd.extend([rsync_options]) # <=== new > cmd.extend([rsyncsshstring]) > cmd.extend([rsynclocalspec]) > cmd.extend([rsyncremotespec]) > > And add a rsync_options = "whatever you want here" to the [[RSYNC]] > section in weewx.conf ala: > > [[RSYNC]] > delete = 0 > skin = Rsync > enable = true > server = x.x.x.x > user = myremoteuser > path = /my/remote/path/here > log_success = true > log_failure = true > rsync_options = "-x -y -z whatever" # <=== new > > Disclaimer - totally untested and no idea if there are security risks of > doing it this way, but it would seem to be about as flexible as you can get > toward supporting whatever rsync options the underlying os supports with a > minimum of change to the existing uploader.... > > On Tuesday, April 2, 2024 at 1:17:58 AM UTC-7 Glenn McKechnie wrote: > >> On Tue, 2 Apr 2024 at 15:00, Chris Alemany <chri...@gmail.com> wrote: >> >>> Thanks for the hints Vince. I ended up looking through the old Wiki and >>> came upon this page about backing up databases with the rsync report and >>> how you can spit rsync into multiple skins. >>> >>> >>> https://github.com/weewx/weewx/wiki/Using-the-RSYNC-skin-as-a-backup-solution >>> >> >> That was a good solution for a while, until - like you - I wanted more. >> >> I eventually pulled the rsyncupload.py code from the main tree and >> stuffed it into a skin. >> The following was written a while ago. I still use it as is, but it's >> rough and untidy. Really does need a clean up but I haven't and still >> don't have the time do that, so you get it warts and all... >> >> https://github.com/glennmckechnie/weewx-rsynctransfer >> >> It should install *Gulp*, it should be self explanatory *Gulp* >> There are plenty of notes and examples in it that show it can handle the >> additional rsync command line options. >> >> my email address is in the code, there's the issues tab on github and I >> always read this group. >> >> Cheers >> Glenn >> >> Various WeeWx addons at >> https://github.com/glennmckechnie >> > -- You received this message because you are subscribed to the Google Groups "weewx-user" group. To unsubscribe from this group and stop receiving emails from it, send an email to weewx-user+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/weewx-user/0d2bbda5-dc2c-4075-bcae-44b6b4c01063n%40googlegroups.com.