From: Daniel Gomez <da.gomez@kernel.org>
To: Jeff Layton <jlayton@kernel.org>,
Luis Chamberlain <mcgrof@kernel.org>,
Chuck Lever <cel@kernel.org>
Cc: kdevops@lists.linux.dev, tools@kernel.org,
GOST <gost.dev@samsung.com>, Josef Bacik <josef@toxicpanda.com>,
Amir Goldstein <amir73il@gmail.com>,
Carlos Maiolino <cem@kernel.org>,
Chandan Babu R <chandanbabu@kernel.org>,
David Sterba <dsterba@suse.com>,
Song Liu <liu.song.a23@gmail.com>,
Scott Mayhew <smayhew@redhat.com>,
Shin'ichiro Kawasaki <shinichiro.kawasaki@wdc.com>,
Konstantin Ryabitsev <mricon@kernel.org>
Subject: Re: kdevops-ng: graduating kdevops beyond Ansible
Date: Thu, 18 Jun 2026 23:52:41 +0200 [thread overview]
Message-ID: <0795e3e1-6c4e-4de0-a62a-6b03ce0c88ce@kernel.org> (raw)
In-Reply-To: <a9e73c72b603e64724bf64fb1a7b4e6a045ed386.camel@kernel.org>
On 18/06/2026 14.31, Jeff Layton wrote:
> On Thu, 2026-06-18 at 11:30 +0200, Daniel Gomez wrote:
> Some thoughts:
>
> I'd be interested to see the demo.
Great! I will send an invite if this thread moves forward.
> It's a little hard to make a
> judgment about moving it in this direction without knowing specifically
> what it would look like. I took a quick look at the git repo and the
> windmill site, but I don't really "get it" yet.
100%.
AFAIK, even Windmill itself struggles a bit to position what it is in
the market. But I think they get some obviously useful things right for
developer workflow orchestration that nobody else does. BTW, before
landing on this project I also looked at others: cijoe [1], Kestra,
and, at a different level, task.dev and just.systems. And these are the
alternatives Windmill compares itself against [2], in case any of them
are familiar to you (none were to me).
For a quick sense of what Windmill is, here's their architecture
diagram: https://www.windmill.dev/docs/misc/architecture
The way I think of it: a GitLab runner plus the YAML pipeline in
.gitlab-ci.yml (or the GitHub Actions equivalent), but for your
development workflows, not your project's CI. Though it can obviously be
used for project's CI too. All in one package, with far more pipeline
("flow", in Windmill terms) features [3]. That last part is one that I'm
also interested in: we could turn kdevops into a kernel regression
workflow engine with git-bisect and generate reports we can submit
directly to the mailing list and maintainers (similar to 0-day). Yes, we
can already do this today with Luis's patches from last year (I tried
them and they work), but it's exactly the kind of workflow where you can
see Ansible isn't the right tool.
Link: https://cijoe.readthedocs.io/en/latest/# [1]
Link: https://www.windmill.dev/docs/compared_to/peers [2]
Link: https://www.windmill.dev/docs/core_concepts#flow-specific-features [3]
>
> I do agree that kconfig/makefiles are not really suited to this task.
> We've made it work, but it's a bit of a square peg in a round hole.
>
> One of the things I liked is that kdevops spawns a normal (familiar)
> distro, and that makes it easy to get in and troubleshoot when things
> are broken. If I have to learn how to operate in yet another new
> distro, I suppose I can, but it doesn't excite me.
I understand, and I'm 100% with you: Nix (+ Windmill) is simply too
many new things at once.
The real benefit here is that the guest and the controller run the exact
same environment. You could compare it to virtme-ng with overlayfs,
where, AFAIK, you boot a guest off the host's rootfs (read-only, with
an overlay for writes), so the guest mirrors the host. The difference is
that with virtme-ng that shared environment is still whatever Debian or
Fedora you happen to be running, so it isn't pinned or reproducible;
with Nix it's the same shared environment (same /nix/store).
A way forward could be to use Windmill as the Ansible, Makefile, Kconfig
replacement or the Nix-based paths, and keep the current toolkit for the
libvirt/libguestfs/Terraform paths. Both can coexist.
>
> OTOH, the goal here is kernel testing, so userland really doesn't
> matter too much.
But we also need changes on userland test suites so I think it matters
too. I use Nix for exactly that, to build and pin custom versions
of the test suites and tools (e.g. fstests, fio, bcc, etc.) that I can
run either baremetal or in a VM. The benefit is that the host and guest
share the same /nix/store (the guest mounts it over virtiofs), so a tool
you build on the host is the exact same build the guest runs.
next prev parent reply other threads:[~2026-06-18 21:52 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-06-18 9:30 kdevops-ng: graduating kdevops beyond Ansible Daniel Gomez
2026-06-18 12:31 ` Jeff Layton
2026-06-18 21:52 ` Daniel Gomez [this message]
2026-06-18 13:22 ` Chuck Lever
2026-06-18 14:02 ` Jeff Layton
2026-06-18 21:58 ` Daniel Gomez
-- strict thread matches above, loose matches on Subject: below --
2026-07-01 8:22 Daniel Gomez
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=0795e3e1-6c4e-4de0-a62a-6b03ce0c88ce@kernel.org \
--to=da.gomez@kernel.org \
--cc=amir73il@gmail.com \
--cc=cel@kernel.org \
--cc=cem@kernel.org \
--cc=chandanbabu@kernel.org \
--cc=dsterba@suse.com \
--cc=gost.dev@samsung.com \
--cc=jlayton@kernel.org \
--cc=josef@toxicpanda.com \
--cc=kdevops@lists.linux.dev \
--cc=liu.song.a23@gmail.com \
--cc=mcgrof@kernel.org \
--cc=mricon@kernel.org \
--cc=shinichiro.kawasaki@wdc.com \
--cc=smayhew@redhat.com \
--cc=tools@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox