[libvirt PATCH v2 1/1] ci: Add helper script

Erik Skultety eskultet at redhat.com
Mon Mar 15 13:17:05 UTC 2021


On Fri, Mar 12, 2021 at 06:54:15PM +0100, Andrea Bolognani wrote:
> On Tue, 2021-02-23 at 16:17 +0100, Erik Skultety wrote:
> > On Wed, Feb 17, 2021 at 10:24:51AM +0100, Andrea Bolognani wrote:
> > > This is intended to be the perform a number of CI-related
> > > operations that currently are implemented in various different
> > > scripts written in various different programming languages; in
> > > this first iteration it does two things:
> > > 
> > >   * implement the functionality of the existing "refresh"
> > >     scripts, which it supersedes;
> > > 
> > >   * provide a nicer front-end for a subset of the
> > >     functionality exposed by the ci/Makefile scaffolding, such
> > >     as running basic builds.
> > > 
> > > Over time, the plan is to rewrite all CI-related functionality
> > > in Python and move it into this script.
> > 
> > You dived into it more aggressively than what I proposed, but we still need to
> > approach it gradually, like don't extract the Makefile functionality partially.
> > Let's lay the foundation first, then replace refresh and then at some point in
> > the future, drop the Makefile and integrate it into the helper, I don't mind
> > keeping the Makefile for a little longer.
> 
> Sorry for taking a while to get back to you.
> 
> I just posted a [v3] which should address pretty much all of your
> feedback, but I'm not sure we're on the same page when it comes to
> the overall strategy so I'm going to spend a few words on that here.
> 
> Even as a simple wrapper, the new helper script is a massive
> usability win because options work in a standard way and are easily
> discoverable, so I'm very keen on adopting it as the official entry
> point for local CI-related functionality right away.
> 
> Whether the underlying code is implemented or not in Python is not as
> important... That's obviously the end goal, but in the short term I'd
> rather have people call the Makefile through the new script than
> directly.
> 
> And once the new script has been introduced, we can *definitely*
> rewrite functionality to Python in chunks. For example, the code
> underpinning the 'list-images' target is already mostly outsourced to
> a shell script, and your series from last month reimplemented that
> with a Python one: instead of making that script standalone and
> having the Makefile call out to it, we should just implement the
> functionality in the new helper script and drop the corresponding
> Makefile code entirely.
> 
> The rest of the Makefile will have to be rewritten in one go because
> it's all tangled together, but again we can do that whenever we have
> some free cycles, without having to hurry too much since, regardless
> of the underlying implementation, users are already enjoying the
> improved user interface.

That's fine, my point was that I didn't like a partial wrapper of the Makefile
functionality, I just suggested one approach, while you went with a different
one if v3 - which I certainly don't mind.

Erik




More information about the libvir-list mailing list