Re: [PATCH v2 0/5] kci-gitlab: Introducing GitLab-CI Pipeline for Kernel Testing

Jarkko Sakkinen
2025-01-24T16:32:12Z

On Fri Jan 24, 2025 at 2:58 PM EET, Nikolai Kondrashov wrote:
> Hi Jarkko,
>
> On 1/23/25 11:30 PM, Jarkko Sakkinen wrote:
> > On Thu Jan 23, 2025 at 3:53 PM EET, Vignesh Raman wrote:
> >> We are working towards creating a generic, upstream GitLab-CI pipeline
> >> (kci-gitlab) that will replace DRM-CI [1]. The proposed GitLab-CI pipeline
> >> is designed with a distributed infrastructure model, making it possible
> >> to run on any gitLab instance. We plan to leverage KernelCI [2] as the
> >> backend, utilizing its hardware, rootfs, test plans, and KCIDB [3]
> >> integration.
> >
> > Why can't you keep the next version of your great pipeline outside the
> > kernel tree?
> >
> > If there is a legit motivation for doing that, why it needs to be bound
> > to Gitlab? Why can't you make script callable from any CI?
>
> Greetings from the (today's) sunny Espoo!
>
> Of course we could keep it outside the kernel tree. However, the point of this
> contribution is to provide kernel maintainers and developers with an easy way
> to setup their CI pipeline on a GitLab instance (the main one, FreeDesktop
> one, or any other). Basically this is like a template or a library, if you
> wish, which helps you do that. Approved by Linus too.

With all due respect, "approved by Linus" is not an argument :-) I get
that Linus can make the "ultimate decision" but in argumentation I'm not
a strong believer of authority based decision making process. Not
downplaying this more than that I knowingly ignore this comment.

> Why GitLab? Because it's one of the best, if not *the* best CI system these
> days, with lots of flexibility, and it's Open-Source too (well, at least
> open-core, which is still very capable). And also because a number of
> maintainers and companies are already using it.

There's also Github Runners and Woodpecker CI used by Codeberg. To add,
some companies and other organizations prefer Jenkins. This one fit for
all strategy is somewhat short-sighted.

Also running Gitlab tasks locally is possible but is heavy-lifting.

Can we then agree that any CI changes can be sent untested to LKML if
a patch set needs to reflect on those? It's not reasonable to except
local runs Gitlab from individuals for patch sets. It makes our lives
more difficult, not easier.

All maintainers I know test their patches for the most part with
BuildRoot, distro VM's and stuff like that. Not claiming that they
don't exist, but never heard of kernel maintainer who uses Gitlab
as their main kernel testing tool.

> Sure, a script could be contributed too, but the value of this contribution is
> a ready-made integration. And we want to make it easily discoverable, and
> easily contributed to.

This is definitely NOT "lots of flexibility".

Are you dead seriously claiming that DevOps engineers could not handle
well defined CI scripts and bind to whatever CI makes sense to them?
o_O

>
> BTW, here's the talk we gave at last year's LPC regarding current use of
> GitLab in the kernel and surrounding community:
>
> https://lpc.events/event/18/contributions/1728/

This patch set should make the case, not an old presentation.

> Nick

BR, Jarkko