Die Linux Foundation gab auf dem Open Source Summit Europe in Lyon, Frankreich, die Aufnahme eines neuen Projekts bekannt: KernelCI . Diese Plattform dient der automatisierten Prüfung des Linux-Kernel-Kompilierungsprozesses.
KernelCI wurde ein Projekt der Linux Foundation, da die Kernelentwicklung auf kernel.org zentralisiert ist, während das Testen den einzelnen Entwicklern und Projekten überlassen bleibt. Unter anderem betreibt jeder große Linux-Distributor sein eigenes Testlabor, der Austausch zwischen den einzelnen Projekten ist jedoch weiterhin begrenzt.
Obwohl weitgehend Einigkeit darüber besteht, dass weitere Tests erforderlich sind, bleiben die Ergebnisse unzureichend und vor allem fragmentiert. Ein Teil des Problems liegt in der Art und Weise, wie Patches über Linux-Mailinglisten implementiert werden. Russell Currey, ein Linux-Kernel-Entwickler, erklärte kürzlich:
Im Gegensatz zu einem Projekt, das ausschließlich auf GitHub oder GitLab basiert und in dem eine Pull-Anforderung alle Informationen enthält, die zum Zusammenführen einer Änderungsgruppe erforderlich sind. Eine E-Mail, die beispielsweise Patch 7/10 enthält, hat diesen Kontext nicht. Es ist fast unmöglich, anhand einer E-Mail-Nachricht zu erkennen, ob eine Reihe von Patches zusammengeführt, abgelehnt oder ersetzt wurden. Im Allgemeinen haben Mailinglisten nicht die gleichen Metadaten wie moderne Projekthosting-Sites, was das Problem der kontinuierlichen Integration noch schwieriger macht.
Eines der Projekte, das den Linux-Kernel regelmäßig und gründlich testet, ist das KernelCI-Projekt. Da es auf automatisierten Tests offizieller Linux-Releases basiert, wird es als Gemeinschaftsprojekt verbreitet und besteht aus freier Software. Die Tests gewährleisten die Kompatibilität mit einer Vielzahl von Hardwareplattformen.
Wenn der Test auf einen Fehler oder eine Regression stößt, werden die Fehler lokalisiert, gemeldet und wenn möglich korrigiert. Linux-Entwicklungszustände werden größtenteils getestet, sodass viele Fehler behoben werden können, bevor sie in eine offizielle Linux-Version aufgenommen werden.
"Ich sage oft, wie gut ich mich mit dem Linux-System fühle, aber ich muss zugeben, dass wir die Art und Weise, wie wir den Kernel testen, sogar verbessern können", sagt Jim Zemlin, Direktor der Foundation. „Testen ist seit langem eine fragmentierte und von oben nach unten gerichtete Praxis. Wir freuen uns darauf, die Qualität, Stabilität und Wartbarkeit unseres Betriebssystems zu verbessern.
Die Wahl von KernelCI hat sich innerhalb der Community als Erfolg erwiesen , wie folgende Kommentare zeigen:
"Wir sind in den letzten zwei Jahren von einem Punkt, an dem es nur wenige Testwerkzeuge gab, zu einer Vielzahl von Lösungen übergegangen", sagt Kevin Hilman, Senior Kernel Expert bei Baylibre. "Wir verwenden Open-Source-Software, verwenden jedoch keinen Open-Source-Testansatz", fügt er hinzu.
Darüber hinaus deckte die Vielfalt der Bemühungen zahlreiche Fehler auf, so dass die langfristigen Wartungsmanager (LTS) des Kernels nicht mehr aktuell waren.
"KernelCI verbessert unsere Methode und Fehlerverfolgung zur Reparatur"
KernelCI plante seit einem Jahr, ein Projekt der Linux Foundation zu werden. Dies dauerte länger als erwartet. Nun hat die Linux Foundation die Aufnahme von KernelCI bekannt gegeben. Zu den Projektsponsoren gehören BayLibre, Civil Infrastructure Platform, Collabora, Foundries.io, Google, Microsoft und Red Hat. Die neue Heimat sichert dank umfassender technischer und finanzieller Unterstützung die langfristige Weiterentwicklung.
Mit diesem Schritt erhält KernelCI Zugriff auf deutlich mehr Hardware. Darüber hinaus wird eine dauerhafte Projektmanagementstruktur etabliert und die Mitarbeit der Community erleichtert. Die Schaffung neuer Projektstrukturen wird einige Zeit in Anspruch nehmen, Fortschritte sind aber in absehbarer Zeit zu erwarten.