openziti / desktop-edge-win

Provides a Ziti client for Windows
Apache License 2.0
35 stars 13 forks source link

Non-disruptive Ziti Desktop Edge Updates #474

Closed surennaidu closed 2 years ago

surennaidu commented 2 years ago

The auto update / installation process in ziti deskop edge is service disruptive where the ziti service and the ongoing connections are terminated as part of the upgrade process. The user is therefore forced to lose their application connections or data rather than being able to choose when they wish to update. Can we do our software update like how windows does it - 1. Allow user to manually update 2. Update at set time / after - ex after x / y/z/ hours that the user can select 3. Allow it to update as per the notification. As orgs start using us for critical apps / traffic, we should handle updates that can be controlled by users such that it doesn't disrupt their work.

mary-dcouto commented 2 years ago

WDE already supports the points 1 and 3. The second point is something that we need to discuss further.

surennaidu commented 2 years ago

If we can leave a day or two's time for point 1 - it would be more user friendly. The manual update window is quite short. In other words, on point 2 - give the user time for a week to update

surennaidu commented 2 years ago
  1. Manual update - should be done any time within a week 2. Remind me after x hours, y hours, after 1 day
dovholuknf commented 2 years ago

Manual update - should be done any time within a week 2. Remind me after x hours, y hours, after 1 day

This will be implemented in the 2.1.4 release (not for the users already deployed).

When a new release is published, after the update check happens (up to 10 minutes), if the UI is open you will see a different icon in the tray showing an update is ready.

It looks like this: image

The App then shows the same on the Main Menu: image

Clicking on the Main Menu allows the user to update when they choose. If after 7 days (the default) the user has NOT updated - they will be updated automatically without user interaction 7 days after the publish of the update. If a newer update is published - the clock will reset and the user will have 7 new days. image

At this time, the user will be continuously nagged that an update is available every 4 hours. If that's too much - we can always tune that down