python_requires >= 3.8 during Yoga

Ghanshyam Mann gmann at ghanshyammann.com
Fri Nov 26 16:18:16 UTC 2021


 ---- On Fri, 26 Nov 2021 10:05:15 -0600 Lee Yarwood <lyarwood at redhat.com> wrote ----
 > On 26-11-21 09:37:44, Ghanshyam Mann wrote:
 > >  ---- On Fri, 26 Nov 2021 06:29:42 -0600 Lee Yarwood <lyarwood at redhat.com> wrote ----
 > >  > On 26-11-21 10:54:26, Alfredo Moralejo Alonso wrote:
 > >  > > On Thu, Nov 25, 2021 at 10:23 PM Ghanshyam Mann <gmann at ghanshyammann.com>
 > >  > > wrote:
 > >  > > 
 > >  > > >  ---- On Thu, 25 Nov 2021 13:58:28 -0600 Marcin Juszkiewicz <
 > >  > > > marcin.juszkiewicz at linaro.org> wrote ----
 > >  > > >  > W dniu 25.11.2021 o 19:13, Stephen Finucane pisze:
 > >  > > >  > > gmann has been helpfully proposing patches to change the
 > >  > > >  > > versions of Python we're testing against in Yoga. I've
 > >  > > >  > > suggested that we might want to bump 'python_requires' in
 > >  > > >  > > 'setup.cfg' to indicate that we no longer support any version
 > >  > > >  > > of Python before 3.8
 > >  > > >  >
 > >  > > >  > CentOS Stream 8 has Python 3.6 by default and RDO team is doing
 > >  > > >  > CS8 -> CS9 migration during Yoga cycle. Can we postpone it to Z
 > >  > > >  > when there will be no distribution with Py 3.6 to care about?
 > >  > 
 > >  > Stupid question that I should know the answer to but does RDO really
 > >  > support RPM based installations anymore? IOW couldn't we just workaround
 > >  > this by providing CS8 py38 based containers during the upgrade?
 > >  > 
 > >  > > As Marcin posted, the plan in RDO is to support both CentOS Stream 8 and
 > >  > > CentOS Stream 9 in Yoga. This is how we have managed previous major CentOS
 > >  > > version upgrades in the past providing support for both releases in an
 > >  > > OpenStack version to ease the upgrade so I'd like to keep yoga working on
 > >  > > py3.6 included in CS8 and CS9.
 > >  > 
 > >  > If this was the plan why wasn't it made clear to the TC before they
 > >  > dropped CS8 from the Yoga runtimes? Would it even be possible for the TC
 > >  > to add CS8 and py36 back in to the Yoga runtimes?
 > >  > 
 > >  > > > Postponing to Z, you mean dropping the py3.6 tests or bumping it in
 > >  > > > in 'setup.cfg' so that no one can install on py3.6 ?
 > >  > > >
 > >  > > > First one we already did and as per Yoga testing runtime we are
 > >  > > > targeting centos9-stream[1] in Yoga itself.
 > >  > > >
 > >  > > > For making 'python_requires' >=py3.8 in 'setup.cfg', I have no
 > >  > > > string opinion on this but I prefer to have flexible here that 'yes
 > >  > > > OpenStack is installable in py3.6 but we do not test it anymore from
 > >  > > > Yoga onwards so no guarantee'.  Our testing runtime main goal is
 > >  > > > that we document the version we are testing *at least* which means
 > >  > > > it can work on lower or higher versions too but we just do not test
 > >  > > > them.
 > >  > > >
 > >  > >
 > >  > > May it be possible to keep py3.6 jobs to make sure patches are not
 > >  > > introducing py3.8-only features that would break deployment in CS8?
 > >  > 
 > >  > We should keep CS8 and py36 as supported runtimes if we are keeping the
 > >  > jobs, otherwise this just sets super confusing.
 > > 
 > > Yeah, I think it create confusion as I can see in this ML thread so
 > > agree on keeping  'python_requires'  also in sycn with what we test.
 > 
 > Cool thanks!
 >  
 > > Now question on going back to centos stream 8 support in Yoga, is it
 > > not centos stream 9 is stable released or is it experimental only? If
 > > stable then we can keep the latest available version which can be
 > > centos stream 9.
 > 
 > I honestly don't know and can't find any docs to point to.
 >  
 > > Our project interface testing doc clearly stats 'latest LTS' to
 > > consider for testing[1] whenever we are ready. I am not very strongly
 > > against of reverting back to centos stream 8 but we should not add two
 > > version of same distro in testing which can be a lot of we consider
 > > below three distro
 > 
 > How do we expect operators to upgrade between Xena where CentOS 8 stream
 > is a supported runtime and Yoga where CentOS 9 stream is currently the
 > equivalent supported runtime without supporting both for a single
 > release?

This is really good question on upgrade testing we do at upstream and I remember
it cameup and discussed a lot during py2.7 drop also that how we are testing the
upgrade from py2.7 to py3. Can we do in grenade? But that we answered as we did
not tested directly but stein and train tested both version so should not be any issue
if you upgrade from there (one of FAQ in my blog[1]).

But on distro upgrade testing, as you know we do not test those in upstream neither
in grenade where upgrade are done on old node distro only not from old distro version to
new distro version with new code.  It is not like we do not want to test but if anyone
from any distro would like to setup grenade for that and maintain then we are more happy.
In summary, yes we cannot guarantee distro upgrade testing from OpenStack upstream testing
due to resource bandwidth issue but we will welcome any help here.


[1] https://superuser.openstack.org/articles/openstack-ussuri-is-python3-only-upgrade-impact/

-gmann

 > 
 > I appreciate it bloats the support matrix a little but the rest of the
 > thread suggests we need to keep py36 around for now anyway.
 > 
 > Cheers, 
 > 
 > -- 
 > Lee Yarwood                 A5D1 9385 88CB 7E5F BE64  6618 BCA6 6E33 F672 2D76
 > 	



More information about the openstack-discuss mailing list