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