On 3/1/24 4:07 PM, Mark Brown wrote:
On Fri, Mar 01, 2024 at 12:27:13PM +0200, Nikolai Kondrashov wrote:
On 2/29/24 10:21 PM, Linus Torvalds wrote:
I would suggest the CI project be separate from the kernel.
It is possible to have a GitLab CI setup with the YAML files in a separate
repository. And we can start with that. However, ultimately I think it's
better to have it in the same repo with the code being tested. This way you
could submit code changes together with the required tweaks to the CI to keep
it passing, making development smoother and faster.
With that in mind, and if you agree, where else would you say we could put it?
Under "scripts"? Or "Documentation"? And where it would be best for the
various subsystems to put theirs? Or could we have the top-level "ci" dir and
pile all the different setups there? Or would you like to wait and see how
adoption goes, and then decide?
If we were going to put bits of this in tree how about something like
tools/testing/forges? I'd hope that things could be shared by multiple
services, if not we could always have subdirs I guess. We could put
glue bits like defining how to run kunit, checkpatch or whatever with
these systems in there so people can share figuring that bit out.
Individual trees or CI systems using these forge based systems could
then reference these files when defining what specific tests they want
to run when which seems more like where the differences will be.
I'm not super familiar with this stuff, the above is based on it looking
like there's an OK degree of separation between the "what to run" and
"how to run" bits. I might be misreading things, and it's not clear to
me how often it'll be useful to be able to update things in tree.
Yes, facilitating reuse and collaboration between CI setups, even if they're
largely different, is another good reason to have it inside the kernel repo.
Nick