Delta updates for moving across apps?


#1

We’re starting to use different Resin applications to manage staging vs. production environments (the complete lack of UI support for the device-specific commits feature has turned us off that approach).

At the moment, it appears that cross-app moves (when I upgrade a device into the production environment/app, for example) don’t use the delta process, even though technically it seems like it shouldn’t make the difference.

If so, could you make delta updates work across application moves, since our staging/production applications are near-identical?

Thanks a lot,
-robin


#2

Hi @robin_at_buddy, which version of resinOS are you running? Supervisor v6.2.9, which landed with resinOS v2.6.0, should theoretically support cross-app deltas.


#3

Running Resin OS 2.9.7+rev1 (prod) (…and substitute foo with registry2.resin.io because your forum thinks I’m trying to post more than two links and won’t let me…)

14.02.18 08:01:53 (-0800) Halting system.
14.02.18 08:01:54 (-0800) Killed application 'foo/ohmv2dev/171a87ea27a953a82a261c085f778873001a529e’
14.02.18 08:01:54 (-0800) Downloading application 'foo/ohmv2prod/ac68d43c3a26db1c6a98387383787a0e234b21f9’
14.02.18 08:07:00 (-0800) Downloaded application 'foo/ohmv2prod/ac68d43c3a26db1c6a98387383787a0e234b21f9’
14.02.18 08:07:00 (-0800) Installing application 'foo/ohmv2prod/ac68d43c3a26db1c6a98387383787a0e234b21f9’
14.02.18 08:07:00 (-0800) Installed application 'foo/ohmv2prod/ac68d43c3a26db1c6a98387383787a0e234b21f9’
14.02.18 08:07:00 (-0800) Starting application 'foo/ohmv2prod/ac68d43c3a26db1c6a98387383787a0e234b21f9’
14.02.18 08:07:01 (-0800) Started application 'foo/ohmv2prod/ac68d43c3a26db1c6a98387383787a0e234b21f9’
14.02.18 08:07:02 (-0800) Systemd init system enabled.

Note that it took around five minutes to download the app (over hardwired ethernet) - it doesn’t feel like that’s a delta. Is there anything in the logs that would indicate whether we were able to snag a delta or not?


#4

Hi @robin_at_buddy, is RESIN_SUPERVISOR_DELTA set on the application to which you’re moving the device? Cause the fact that it says “Downloading application” instead of “Downloading delta for application” suggests that the device is not configured to use deltas at that specific moment. Or did you set a device-specific configuration variable to enable deltas?