Drop RHEL 7 / CentOS 7 support and move to Python 3.8 minimum?

Andrew Bartlett abartlet at samba.org
Wed Aug 23 20:07:14 UTC 2023


On Wed, 2023-08-23 at 12:04 -0700, Christof Schmitt wrote:
> On Fri, Aug 18, 2023 at 12:08:00PM +1200, Andrew Bartlett via samba-
> technical wrote:
> > On Fri, 2023-08-18 at 11:52 +1200, Douglas Bagnall wrote:
> > > On 18/08/23 11:20, Andrew Bartlett via samba-technical wrote:
> > > > We need to reduce our CI time, and one way to do that is to
> > > > reuseobjects as much as possible, creating read-only objects
> > > > once
> > > > per class,not per test.
> > > > This is much cleaner if with the addCleanup() and
> > > > addClassCleanup()methods, so I would like to be able to do
> > > > that.
> > > > To do that we need Python 3.8.  The primary blocker for this is
> > > > theCentOS 7 build which uses Python 3.6 from EPEL, and a newer
> > > > Python isnot in that repo.
> > > 
> > > I had a look at the Python 3.8 git history for Lib/unittest to
> > > see if
> > > it would be simple to backport/recreate the ClassCleanup code
> > > into
> > > our TestCase wrappers (like we used to do for various assert
> > > methods), and the answer is NO. Thankfully.
> > > I have no opinions about Centos 7, but I do agree that the
> > > supported
> > > Python versions need to be exactly determined by CI.
> > > Douglas
> > 
> > I would note that times when we didn't line up the CI version and
> > Python 'supported' version, it kept breaking. 
> > I note that RHEL7 ends 'maintenance' in June 2024, just after the
> > 4.20
> > release March 2024
> > https://www.redhat.com/en/blog/end-maintenance-red-hat-enterprise-linux-7-almost-here
> > 
> > Those dates I think give good cause to drop CentOS 7, but other
> > views
> > still welcome.
> 
> Maybe based on the comments in this thread, dropping CentOS 7 and
> requiring a newer Python version could be takes as two separate
> steps?
> Whoever is running something based on CentOS 7 might not be upgrading
> to
> the latest Samba?
> 
> And what are the Python dependencies? That obviously affects ADDC and
> testcases, but maybe not the file server and AD member parts?

I would rather leave this until we can move for a more significant
reason.  

As an example, I and others put a lot of effort into getting off Ubuntu
18.04 because we could remove a pile of in-tree cryptography, and a lot
of #ifdefs around a GnuTLS feature.  That was a useful gain. 

Getting Python 3.8 features would have been handy, but without that,
and given the work folks have done to get us a GnuTLS backport, the
reasons to drop CentOS become less compelling (essentially just the CI
cost). 

I note that SerNet is still building Samba for CentOS 7: 
https://samba.plus/centos

If we break the AD DC testcases, and worse still the AD DC
provisioning, we also break the fileserver tests, as most of those need
the AD DC operating. 

I'll close off the MR.  It was worth a try.

Andrew Bartlett


-- 
Andrew Bartlett (he/him)       https://samba.org/~abartlet/
Samba Team Member (since 2001) https://samba.org
Samba Team Lead                https://catalyst.net.nz/services/samba
Catalyst.Net Ltd

Proudly developing Samba for Catalyst.Net Ltd - a Catalyst IT group
company

Samba Development and Support: https://catalyst.net.nz/services/samba

Catalyst IT - Expert Open Source Solutions




More information about the samba-technical mailing list