Than you Corey this sounds like a good path forward to me. As you allude
to we have seen a significant increase in the number of SRUs required
for some releases of Openstack, particularly those that correspond with
LTS releases of Ubuntu e.g. Queens and this is in part due to the
significant delta between the last upstream point release and current
stable branch HEAD for extended maintenance releases of Openstack. This
has itself led to challenges with some SRUs particularly where a fix
constitutes more than one backported patch which themselves potentially
have other dependencies. This is most acute for releases like Nova and
Neutron where the delta can be in the 100s. As you point out, providing
release snapshots is not risk-free but if we provide a sufficient level
of testing and focus resources on testing snapshots rather than
continuous SRUs for the same release I'm sure we will see a net gain
both in terms of reducing load on the SRU team as well getting fixes out
to more users faster. As a starting point I would really like to see us
start building snapshots e.g. every week or two and making them
available for testing. Once we have enough data to prove their stability
we can then consider their suitability for release. And again as you
point out, the inital snapshot will be the largest delta and therefore
require significant testing but subsequent releases will be small so
lower risk (we would apply the same level of testing though).
Thanks,
Ed
On 24/03/2021 13:38, Corey Bryant wrote:
On Tue, Mar 9, 2021 at 2:55 PM Brian Murray <[email protected]
<mailto:[email protected]>> wrote:
On Mon, Mar 08, 2021 at 11:58:18AM -0500, Corey Bryant wrote:
> On Mon, Feb 22, 2021 at 5:16 PM Corey Bryant
<[email protected] <mailto:[email protected]>>
> wrote:
>
> > Hello SRU Team,
> >
> > I'm writing to discuss delivery of patches from extended
maintenance
> > stable branches as snapshots.
> >
> > This would occur during the extended maintenance phase of an
upstream
> > stable branch, which falls between the maintained phase and
EOL phase.
> > I would see this process being similar to the current process
that is used
> > to deliver stable point releases, described at:
> > https://wiki.ubuntu.com/OpenStack/StableReleaseUpdates.
> >
> > Snapshots refers to the process by which we currently deliver
package
> > updates during a development release and prior to the final
release. For
> > example, nova 3:22.0.1+git2021012713.d92c0740c6-0ubuntu1 in
hirsute
> > contains everything in the upstream master git branch up to
commit hash
> > d92c0740c6.
> >
> > == What is Extended Maintenance? ==
> > First, it's worth understanding what the upstream "Maintained"
phase is.
> > During this phase, upstream regularly releases stable point
releases that
> > are based on a specific commit (e.g. the latest HEAD commit
for the
> > stable/queens branch at a point in time), and we then package
those point
> > releases up in distro.
> >
> > Following the "Maintained" phases is the "Extended
Maintenance" phase.
> > During this phase, upstream no longer cuts any stable point
releases for
> > that stable branch, however patches continue to be backported
to the
> > branch. This is the phase where we would like to have the
ability to
> > deliver snapshots of stable branches. This would allow us to
pick up all
> > stable branch patches since, say, the final point release for
stable/queens
> > (bionic). For example, the current version of nova in bionic is
> > 2:17.0.13-0ubuntu1, and that is based on the final point
release for
> > upstream stable/queens. If we were to do a snapshot today for
nova in
> > bionic, it would be versioned along the lines of
> > 2:17.0.13+git2021022200.944443a7b0-0ubuntu1.
> >
> > More details on upstream maintenance phases can be reviewed at:
> >
https://docs.openstack.org/project-team-guide/stable-branches.html#maintenance-phases
> >
> > == Advantages of Stable Snapshots ==
> > * Less overhead for the OpenStack engineering and SRU teams.
Currently we
> > have various cherry-picked patches that are dealt with via
separate SRU
> > bugs requiring individual testing.
> > * As the cherry-pick process is reactive, many of these SRUs
tend to be
> > high impact or critical for users, requiring immediate action
from these
> > teams.
> > * We have a lot of users that are now on, and moving to,
bionic (queens)
> > and we would like to be more proactive in fixing bugs for them.
> > * This would naturally result in a regular cadence along the
lines of the
> > monthly stable point release cadence that we currently follow.
> > * Cherry-picking individual patches can increase regression
potential for
> > frequently modified code when they don't apply cleanly.
> > * All patches that have landed in an extended maintenance
branch have
> > already landed in all ensuing stable branches and master,
therefore
> > negating much of the regression potential mentioned in
"Disadvantages"
> > below.
> >
> > == Disadvantages ==
> > * Upstream stable branches that are in extended maintenance do not
> > guarantee the same upstream test coverage that supported
branches do. The
> > maintenance-phases documentation states "There is no statement
about the
> > level of testing and upgrades from Extended Maintenance are
not supported
> > within the Community."
> >
> > == What Ubuntu Releases would this affect? ==
> > Stable snapshots would only be needed for Ubuntu LTS releases
(Upstream
> > "Maintained" period is 18 months for stable branches).
Currently this would
> > only be applicable to Ubuntu 18.04 as bionic is the only LTS
with a
> > corresponding upstream stable branch that's in extended
maintenance.
> >
> > == How many patches are we talking about? ==
> > For a sampling of stable/queens, new snapshots would pick up
this many
> > patches:
> >
> > nova: 337
> > neutron: 106
> > heat: 47
> > cinder: 21
> > glance: 11
> > designate: 11
> > swift: 10
> > horizon: 8
> > keystone: 7
> >
> > A few of those look daunting, yes, but perhaps that depends on
how you
> > look at it. Also please keep in mind, queens has been in extended
> > maintenance since October of 2019 so this would be quite the
one-time
> > waterfall for bionic. In the future we'd pick up fewer patches
at a time at
> > a regular cadence.
> >
> > Thanks for taking the time to read this. Please let me know if
you have
> > any opinions or questions about this approach.
> >
> > Corey
> >
>
> Hello SRU Team,
>
> I wanted to see if I could revive this topic and discuss the
possibility of
> moving forward with stable snapshots as described in this thread.
>
> Would it make sense to add this to a meeting agenda or is the
mailing list
> a good place to discuss?
The Ubuntu SRU team does have a monthly meeting (conducted via Google
Meet or whatever it is called now) and the next one is scheduled for
Thursday, March 18th. Unfortunately I won't be able to attend that
meeting but perhaps the other SRU team members can invite you so
it can
be discussed.
Cheers,
--
Brian Murray
Last week I attended the SRU team meeting and also met with Edward
Hope-Morley from Canonical Sustaining Engineering to discuss stable
snapshots. Ed's team is one of the primary drivers/stakeholders for
Ubuntu OpenStack SRU work. Thank you to all who provided input at the
meetings.
The main result of the discussion with the SRU team is that we would
need to ensure we are closing the gap, specifically with extended
maintenance branches, where upstream may have a reduced level of
testing (including upgrade testing). Our QA process at
https://wiki.ubuntu.com/OpenStack/StableReleaseUpdates would need to
be enhanced with testing efforts that would mitigate the regression
potential introduced by reduced upstream gate testing.
In discussion with Ed, we came to the conclusion that a proof of
concept makes sense before moving forward. For example we can snapshot
the upstream stable/queens branches (see section labeled "How many
patches are we talking about?" above in thread) and both Ed's team and
ours can test them in a PPAs. This will be an opportunity to assess
the code quality and enhance our QA tests before moving forward with
anything official. So that's the plan for now, and I will plan on
reporting back on this thread once we are ready (or not) to move on
from the POC.
Thanks,
Corey
--
Ubuntu-release mailing list
[email protected]
Modify settings or unsubscribe at:
https://lists.ubuntu.com/mailman/listinfo/ubuntu-release