Server-side phasing increase per track or per release

Bug #1946029 reported by Stéphane Graber
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Snap Store Server
New
Undecided
Unassigned

Bug Description

Currently with the experimental phasing feature enabled, there is a hardcoded percentage increase for the snap on the store side. Every 6 hours, the store will increase the phased percentage by that amount.

The publisher can always manually override those percentage as they see fit or not use it at all and rely on manual phasing only.

In the LXD case, we have two main set of releases:
 - LTS tracks (2.0, 3.0, 4.0) which only get updated for bugfixes or security fixes
 - Feature release track (latest) which gets a new release every month

Out of our ~3.4M snap users, only ~0.5M are on the latest track, so while that track is much faster moving, many less users are affected by releases and so the store load is far lower than when we release a LTS update.

For us, we'd ideally want to have releases headed to LTS tracks start at around 10% and increase by 10-15% every 6 hours, giving a nice slow rollout for the store. As those are just bugfixes, we're quite unlikely to have users eagerly waiting for them to hit and getting annoyed at the slow roll out.

Then for feature releases, those are quite widely announced along with a rollout date, so having it span multiple days feels more problematic. Given the more limited user base, we'd prefer those start at around 25% and increase by 25% every 6 hours, giving us a complete release in 24 hours.

Now exactly how we'd do that doesn't really matter. It could be a per-track/per-channel setting on the store side, or be a setting we provide through the CLI at release time (both providing the current phasing and the additional phasing to add every 6 hours).

Having this supported in the store would save us having to script this flow on our side and hopefully would be useful to other projects with a similar split in user base.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.