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. [v3] https://listman.redhat.com/archives/libvir-list/2021-March/msg00631.html -- Andrea Bolognani / Red Hat / Virtualization