<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Old blog posts 2018-2021 on CKI Project</title>
    <link>https://cki-project.org/docs/background/blog/</link>
    <description>Recent content in Old blog posts 2018-2021 on CKI Project</description>
    <generator>Hugo</generator>
    <language>en</language>
    <lastBuildDate>Thu, 07 Oct 2021 00:00:00 +0000</lastBuildDate>
    <atom:link href="https://cki-project.org/docs/background/blog/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Celebrating our successes</title>
      <link>https://cki-project.org/docs/background/blog/2021-10-07-celebrating-our-successes/</link>
      <pubDate>Thu, 07 Oct 2021 00:00:00 +0000</pubDate>
      <guid>https://cki-project.org/docs/background/blog/2021-10-07-celebrating-our-successes/</guid>
      <description>&lt;p&gt;Last Friday we accepted another facet of our new, mostly-remote reality, and&#xA;held an online party to celebrate and acknowledge the successes we had in the&#xA;past year. Normally, we would&amp;rsquo;ve met several times a year at conferences and&#xA;meetings in Brno, Brussels and elsewhere, and while another online meeting&#xA;didn&amp;rsquo;t really have the same flavor, it was still nice to get together for&#xA;something else but work proper.&lt;/p&gt;&#xA;&lt;p&gt;We had plenty of causes:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Advancing CI system cooperation with KernelCI</title>
      <link>https://cki-project.org/docs/background/blog/2021-07-07-advancing-ci-system-cooperation/</link>
      <pubDate>Wed, 07 Jul 2021 00:00:00 +0000</pubDate>
      <guid>https://cki-project.org/docs/background/blog/2021-07-07-advancing-ci-system-cooperation/</guid>
      <description>&lt;p&gt;In 2019 CKI Project held a &lt;a href=&#34;https://cki-project.org/docs/background/blog/2019-07-10-hackfest-agenda/&#34;&gt;hackfest&lt;/a&gt;&#xA;inviting all maintainers of CI systems for the Linux Kernel for discussion and&#xA;cooperation.&lt;/p&gt;&#xA;&lt;p&gt;The hackfest &lt;a href=&#34;https://cki-project.org/docs/background/blog/2019-10-01-plumbers-summary/&#34;&gt;went well&lt;/a&gt;, and among other&#xA;things we agreed that parsing all the different report e-mails, navigating the&#xA;various dashboards, and correlating results manually, takes too much of&#xA;developer and maintainer time, and lowers effectiveness of CI and testing.&#xA;Building and maintaining all these systems separately is also a lot of work,&#xA;which we can minimize if we join our forces and produce something everyone&#xA;could use instead.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Welcoming clang built kernels into CKI family</title>
      <link>https://cki-project.org/docs/background/blog/2021-01-21-clang-pipelines/</link>
      <pubDate>Thu, 21 Jan 2021 00:00:00 +0000</pubDate>
      <guid>https://cki-project.org/docs/background/blog/2021-01-21-clang-pipelines/</guid>
      <description>&lt;p&gt;Up till now, CKI was only building kernels using &lt;code&gt;gcc&lt;/code&gt; toolchains. This was&#xA;the standard, especially in the Fedora and RHEL land we&amp;rsquo;re interacting with.&#xA;However, we are happy to announce that this is &lt;a href=&#34;https://gitlab.com/cki-project/pipeline-definition/-/merge_requests/1085&#34; target=&#34;_blank&#34;&gt;no longer the case&lt;/a&gt;, and CKI&#xA;now allows building upstream kernels using &lt;code&gt;clang/llvm&lt;/code&gt;! 🎉🥳&lt;/p&gt;&#xA;&lt;p&gt;We have already enabled mainline building and testing for &lt;code&gt;x86_64&lt;/code&gt;, &lt;code&gt;aarch64&lt;/code&gt;&#xA;and &lt;code&gt;ppc64le&lt;/code&gt;. Both &lt;code&gt;aarch64&lt;/code&gt; and &lt;code&gt;x86_64&lt;/code&gt; are using the full LLVM toolchain&#xA;(with &lt;code&gt;LLVM=1&lt;/code&gt;), while &lt;code&gt;ppc64le&lt;/code&gt; is compiled with &lt;code&gt;CC=clang&lt;/code&gt;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Building multi-arch images</title>
      <link>https://cki-project.org/docs/background/blog/2020-09-08-building-multi-arch-images/</link>
      <pubDate>Tue, 08 Sep 2020 00:00:00 +0000</pubDate>
      <guid>https://cki-project.org/docs/background/blog/2020-09-08-building-multi-arch-images/</guid>
      <description>&lt;p&gt;In the &lt;a href=&#34;https://cki-project.org/docs/background/blog/2020-09-07-building-foreign-arch-images/&#34;&gt;last post&lt;/a&gt;, we succeeded in building foreign arch images via qemu. As&#xA;each architecture gets its own tag, it becomes a bit cumbersome to use them&#xA;across architectures.&lt;/p&gt;&#xA;&lt;p&gt;Luckily, buildah supports multi-arch manifests which allow the client to choose&#xA;the suitable image for the current architecture by itself. Again, the&#xA;&lt;a href=&#34;https://www.youtube.com/watch?v=SYJgkkjqd7s&#34; target=&#34;_blank&#34;&gt;DevConf.CZ 2020 presentation&lt;/a&gt; on building multi-arch container images with&#xA;buildah by Nalin Dahyabhai is the best introduction that I could find.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Building foreign-arch images</title>
      <link>https://cki-project.org/docs/background/blog/2020-09-07-building-foreign-arch-images/</link>
      <pubDate>Mon, 07 Sep 2020 00:00:00 +0000</pubDate>
      <guid>https://cki-project.org/docs/background/blog/2020-09-07-building-foreign-arch-images/</guid>
      <description>&lt;p&gt;The CKI pipeline is powered by the internal PSI OpenShift cluster running on&#xA;&lt;a href=&#34;https://cki-project.org/docs/background/blog/2018-11-08-hello-world/&#34;&gt;x86_64 machines&lt;/a&gt;. For compiling kernels on &lt;code&gt;x86_64&lt;/code&gt;, the native compiler&#xA;toolchain is used. For all other architectures, the kernel is cross-compiled.&#xA;While this setup is supported by the RHEL cross-compiler team for the kernel&#xA;itself, this is not the case for the kernel tools.&lt;/p&gt;&#xA;&lt;p&gt;Up to now, this was not a problem as the CKI pipeline did not build those RPMs.&#xA;As that is going to change in the near future, we would like to build native&#xA;versions of our &lt;a href=&#34;https://gitlab.com/cki-project/containers/&#34; target=&#34;_blank&#34;&gt;container images&lt;/a&gt; to bootstrap the effort.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Plumbers and CKI hackfest highlights</title>
      <link>https://cki-project.org/docs/background/blog/2019-10-01-plumbers-summary/</link>
      <pubDate>Tue, 01 Oct 2019 00:00:00 +0000</pubDate>
      <guid>https://cki-project.org/docs/background/blog/2019-10-01-plumbers-summary/</guid>
      <description>&lt;p&gt;This September, the CKI team got together for &lt;a href=&#34;https://linuxplumbersconf.org/event/4/timetable&#34; target=&#34;_blank&#34;&gt;Linux Plumbers&lt;/a&gt;. There were a&#xA;lot of great discussions and we couldn&amp;rsquo;t take part of every single one, but&#xA;here are some highlights from the conference mainly related to CI, workflows&#xA;and testing!&lt;/p&gt;&#xA;&lt;h2 id=&#34;plumbers-discussions&#34;&gt;Plumbers discussions&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#plumbers-discussions&#34; aria-label=&#34;Heading self-link&#34;&gt;&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Laura Abbott led the &lt;strong&gt;distribution kernel microconference&lt;/strong&gt;. The main goal was&#xA;to discuss common problems arising from maintaining a non-mainline kernel,&#xA;whether it comes to keeping in sync with bugfixes, packaging or testing. A lot&#xA;of the topics circled around leveraging the similar work everyone is doing and&#xA;figuring out common tooling and some discussions even lead to the &lt;strong&gt;distribution&#xA;testing BoF&lt;/strong&gt;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>CKI hackfest agenda for Plumbers</title>
      <link>https://cki-project.org/docs/background/blog/2019-07-10-hackfest-agenda/</link>
      <pubDate>Wed, 10 Jul 2019 00:00:00 +0000</pubDate>
      <guid>https://cki-project.org/docs/background/blog/2019-07-10-hackfest-agenda/</guid>
      <description>&lt;p&gt;Following the hackfest invite from the previous post, we&amp;rsquo;re here with more&#xA;detailed information!&lt;/p&gt;&#xA;&lt;h2 id=&#34;schedule&#34;&gt;Schedule&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#schedule&#34; aria-label=&#34;Heading self-link&#34;&gt;&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;September 12:&lt;/p&gt;&#xA;&lt;table&gt;&#xA;  &lt;thead&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;th style=&#34;text-align: center&#34;&gt;Time slot&lt;/th&gt;&#xA;          &lt;th style=&#34;text-align: center&#34;&gt;Topic&lt;/th&gt;&#xA;      &lt;/tr&gt;&#xA;  &lt;/thead&gt;&#xA;  &lt;tbody&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td style=&#34;text-align: center&#34;&gt;09:30-10:00&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Breakfast&lt;/strong&gt; (provided)&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td style=&#34;text-align: center&#34;&gt;10:00-10:30&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: center&#34;&gt;Introductions&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td style=&#34;text-align: center&#34;&gt;10:30-11:00&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: center&#34;&gt;Test data standardization&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td style=&#34;text-align: center&#34;&gt;11:10-12:00&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: center&#34;&gt;Common place for upstream results&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td style=&#34;text-align: center&#34;&gt;12:10-13:30&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: center&#34;&gt;How to avoid effort duplication&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td style=&#34;text-align: center&#34;&gt;13:30-14:30&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Lunch break&lt;/strong&gt; (not provided)&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td style=&#34;text-align: center&#34;&gt;14:30-16:00&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: center&#34;&gt;Open testing philosophy&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td style=&#34;text-align: center&#34;&gt;16:10-17:00&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: center&#34;&gt;Common hardware pools&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;  &lt;/tbody&gt;&#xA;&lt;/table&gt;&#xA;&lt;p&gt;September 13:&lt;/p&gt;&#xA;&lt;table&gt;&#xA;  &lt;thead&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;th style=&#34;text-align: center&#34;&gt;Time slot&lt;/th&gt;&#xA;          &lt;th style=&#34;text-align: center&#34;&gt;Topic&lt;/th&gt;&#xA;      &lt;/tr&gt;&#xA;  &lt;/thead&gt;&#xA;  &lt;tbody&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td style=&#34;text-align: center&#34;&gt;09:30-10:00&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Breakfast&lt;/strong&gt; (provided)&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td style=&#34;text-align: center&#34;&gt;10:00-11:20&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: center&#34;&gt;Getting results to developers/maintainers&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td style=&#34;text-align: center&#34;&gt;11:30-12:30&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: center&#34;&gt;Onboarding new trees and tests&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td style=&#34;text-align: center&#34;&gt;12:40-13:30&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: center&#34;&gt;CI bug tracking&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td style=&#34;text-align: center&#34;&gt;13:30-14:30&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Lunch break&lt;/strong&gt; (not provided)&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td style=&#34;text-align: center&#34;&gt;14:30-16:00&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: center&#34;&gt;Bugs and result interpretation&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td style=&#34;text-align: center&#34;&gt;16:10-17:30&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: center&#34;&gt;Security when testing untrusted patches&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;  &lt;/tbody&gt;&#xA;&lt;/table&gt;&#xA;&lt;p&gt;The time slots aren&amp;rsquo;t set in stone. Sessions might run longer than planned&#xA;(based on how much there is to discuss and plan) and thus the whole hackfest&#xA;might end later as well. Discussions and implementations can (and should)&#xA;continue on mailing lists and code repositories based on created agreements.&lt;/p&gt;</description>
    </item>
    <item>
      <title>CKI pipeline under the hood part 2: Don&#39;t reinvent the wheel</title>
      <link>https://cki-project.org/docs/background/blog/2019-05-27-under-the-hood-part-2/</link>
      <pubDate>Mon, 27 May 2019 00:00:00 +0000</pubDate>
      <guid>https://cki-project.org/docs/background/blog/2019-05-27-under-the-hood-part-2/</guid>
      <description>&lt;p&gt;Now that we know what to test, we need to figure out &lt;em&gt;how&lt;/em&gt; to do it. To&#xA;reiterate, the base stages we need are:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Apply the patch(es) to the git tree&lt;/li&gt;&#xA;&lt;li&gt;Build the kernel&lt;/li&gt;&#xA;&lt;li&gt;Test the kernel&lt;/li&gt;&#xA;&lt;li&gt;Profit (send the report)&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;As we discussed in the &lt;a href=&#34;https://cki-project.org/docs/background/blog/2019-04-08-under-the-hood-part-1/&#34;&gt;previous post&lt;/a&gt;, not all steps are relevant to all types&#xA;of testing.&lt;/p&gt;&#xA;&lt;p&gt;When the project started we used Jenkins to execute the stages. We&amp;rsquo;ve since&#xA;moved away as we didn&amp;rsquo;t find it flexible enough for our needs. We often ran into&#xA;errors with plugins and general maintenance, deployments took longer than we&#xA;wanted and let&amp;rsquo;s be honest, writing and debugging Groovy is no fun either. We&amp;rsquo;ve&#xA;spent way too much time maintaining the setup and didn&amp;rsquo;t have time to actually&#xA;work on new features.&lt;/p&gt;</description>
    </item>
    <item>
      <title>CKI pipeline under the hood part 1: Figuring out what to test</title>
      <link>https://cki-project.org/docs/background/blog/2019-04-08-under-the-hood-part-1/</link>
      <pubDate>Mon, 08 Apr 2019 00:00:00 +0000</pubDate>
      <guid>https://cki-project.org/docs/background/blog/2019-04-08-under-the-hood-part-1/</guid>
      <description>&lt;p&gt;So we want to test the kernel, great idea! But what does it mean? Manually watch&#xA;a random git tree, build it and submit a test job? Git is a great tool but it&amp;rsquo;s&#xA;not exactly known for sending you notifications on updates. And what about&#xA;testing completed builds from build systems like &lt;a href=&#34;http://koji.fedoraproject.org/&#34; target=&#34;_blank&#34;&gt;koji&lt;/a&gt; or &lt;a href=&#34;https://copr.fedorainfracloud.org/&#34; target=&#34;_blank&#34;&gt;COPR&lt;/a&gt;? Or if the&#xA;developers come and want you to test their patches from &lt;a href=&#34;https://patchwork.kernel.org/&#34; target=&#34;_blank&#34;&gt;Patchwork&lt;/a&gt;? It&amp;rsquo;s easy&#xA;to get lost, and we haven&amp;rsquo;t even started talking about the actual test pipeline.&#xA;So, let&amp;rsquo;s take a look at &lt;a href=&#34;https://gitlab.com/cki-project/pipeline-trigger&#34; target=&#34;_blank&#34;&gt;pipeline triggers&lt;/a&gt;, our solution to taming the chaos.&lt;/p&gt;</description>
    </item>
    <item>
      <title>CKI updates and news</title>
      <link>https://cki-project.org/docs/background/blog/2019-04-01-updates-and-news/</link>
      <pubDate>Mon, 01 Apr 2019 00:00:00 +0000</pubDate>
      <guid>https://cki-project.org/docs/background/blog/2019-04-01-updates-and-news/</guid>
      <description>&lt;p&gt;It&amp;rsquo;s been a while since the &lt;a href=&#34;https://cki-project.org/docs/background/blog/2018-11-08-hello-world/&#34;&gt;initial introduction&lt;/a&gt; of how and what we do and&#xA;things have since changed. Let&amp;rsquo;s cover the high-level changes first, and then&#xA;get into full technical details of our current setup in another post(s)!&lt;/p&gt;&#xA;&lt;p&gt;First, let&amp;rsquo;s get the most important change out of the way: we are slowly&#xA;migrating to &lt;a href=&#34;https://gitlab.com/cki-project&#34; target=&#34;_blank&#34;&gt;GitLab&lt;/a&gt;! There&amp;rsquo;s still some code living in the old GitHub&#xA;location (update 2020-06-03: not anymore!)&#xA;which will stay there for a while. Welcome to the chaos of multiple&#xA;repositories! More details about why we decided for this change will be provided&#xA;in one the next posts.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Join us at Devconf.cz in Brno!</title>
      <link>https://cki-project.org/docs/background/blog/2019-01-12-cki-talk-at-devconf-cz/</link>
      <pubDate>Fri, 04 Jan 2019 00:00:00 +0000</pubDate>
      <guid>https://cki-project.org/docs/background/blog/2019-01-12-cki-talk-at-devconf-cz/</guid>
      <description>&lt;p&gt;&lt;figure class=&#34;image-caption&#34;&gt;&#xA;    &lt;img style=&#34;max-width: 100%; width: auto; height: auto;&#34; &#xA;         alt=&#34;cki-talk-slide&#34;&#xA;         src=&#34;https://cki-project.org/docs/background/blog/2019-01-12-cki-talk-at-devconf-cz/cki-devconf-cz-talk-2019.png&#34;&#xA;         width=&#34;960&#34;&#xA;         height=&#34;540&#34;&gt;&#xA;    &lt;figcaption&gt;&#xA;        &lt;small&gt;&#xA;        &#xA;        &lt;/small&gt;&#xA;    &lt;/figcaption&gt;&#xA;&lt;/figure&gt;&lt;/p&gt;&#xA;&lt;p&gt;The CKI team will be together in Brno later this week for &lt;a href=&#34;https://devconf.info/cz&#34; target=&#34;_blank&#34;&gt;Devconf.cz&lt;/a&gt; and&#xA;team meetings. We have a talk on Friday afternoon called&#xA;&lt;a href=&#34;https://devconfcz2019.sched.com/event/7f9283e801b3690bd347635c97bf876f&#34; target=&#34;_blank&#34;&gt;&amp;ldquo;Cookies for Kernel Developers&amp;rdquo;&lt;/a&gt; and we hope to see you there!&lt;/p&gt;&#xA;&lt;p&gt;Our talk covers the origin of the project, where we are today, and where we&#xA;want to be in the future. We want more kernel developers and testers to be&#xA;involved as well. There will be plenty of information about all of that in&#xA;the talk.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Hello from the CKI Project team!</title>
      <link>https://cki-project.org/docs/background/blog/2018-11-08-hello-world/</link>
      <pubDate>Thu, 08 Nov 2018 14:53:14 -0600</pubDate>
      <guid>https://cki-project.org/docs/background/blog/2018-11-08-hello-world/</guid>
      <description>&lt;p&gt;The mission of the Continuous Kernel Integration (CKI) Project is to find&#xA;bugs in kernel patches before they are committed to an upstram kernel tree. We&#xA;are team of kernel developers, kernel testers, and automation engineers.&lt;/p&gt;&#xA;&lt;p&gt;We want to make each kernel maintainer&amp;rsquo;s job a little bit easier by providing&#xA;automated feedback on patchsets proposed for the Linux kernel. In addition,&#xA;we want to make it easier for new kernel developers to contribute and get&#xA;testing feedback for their patches as well.&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
