github-actions: Upload built kernel binaries as a downloadable artifact#1225
Open
kemotaha wants to merge 3 commits into
Open
github-actions: Upload built kernel binaries as a downloadable artifact#1225kemotaha wants to merge 3 commits into
kemotaha wants to merge 3 commits into
Conversation
Add an upload-artifact step that publishes the kernel-<kernelrelease>-<arch>.tar.xz tarball produced by build_kernel.sh in kernel-container-build, so testers can download the built kernel (vmlinuz, modules, config, System.map, optional initramfs) directly from each CI run. Paired with the matching extraction step in ctrliq/kernel-container-build. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
There was a problem hiding this comment.
Pull request overview
Adds an upload-artifact step to the multi-arch CI workflow so the kernel binaries tarball (produced by a companion change in kernel-container-build) is published as a downloadable per-arch artifact.
Changes:
- New
Upload kernel binaries tarballstep usingactions/upload-artifact@v7.0.1, matchingoutput/kernel-*.tar.xz. - Configured with
if: always(),if-no-files-found: warn, and a 7-day retention to remain non-fatal until the producing PR lands.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
DO NOT MERGE — revert before opening for review. This commit points the workflow at the kernel-container-build feature branch so workflow_dispatch can exercise the new tarball extraction step end-to-end before kernel-container-build#32 lands on main. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
…ball" This reverts commit 52a28fe.
shreeya-patel98
approved these changes
May 19, 2026
Collaborator
shreeya-patel98
left a comment
There was a problem hiding this comment.
I have requested change for one minor thing in the kernel-container-repo PR, this one looks good to me.
Also, I think it would be nice to do the same for getting kselftest and ltp artifact so when we are in a rush to test things, we can just install the compiled binaries and run it locally.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
upload-artifactstep to the multi-arch CI workflow that publishes the kernel binaries tarball produced by ctrliq/kernel-container-build#32.kernel-<kernelrelease>-<arch>.tar.xz(containsvmlinuz,System.map, modules tree, and optionallyconfig/initramfs).kernel-binaries-<arch>(one per matrix arch).Order of operations
Land ctrliq/kernel-container-build#32 first. Until that's merged, this PR's upload step will find no file in
output/and will log a warning (if-no-files-found: warn) — non-fatal so production CI isn't broken if this lands out of order. Once kernel-container-build has merged and is producing the tarball reliably, consider flipping toif-no-files-found: error.How to use the tarball
Once both PRs are merged, every CI run on a
{user}_<base>push will produce two new artifacts on the run summary page:kernel-binaries-x86_64kernel-binaries-aarch64Download
Via the GitHub UI: Actions tab → run → scroll to the Artifacts section at the bottom → click
kernel-binaries-<arch>to download a ZIP containing the.tar.xz.Via CLI:
Install on a target host (RHEL/Rocky 8/9/10)
To roll back after testing:
Caveat: UEFI Secure Boot
The kernel in the tarball is not signed by any trusted UEFI key. On hosts with Secure Boot enabled, shim/GRUB will refuse to load it (
error: prohibited by secure boot policy). Either:mokutil --disable-validationfollowed by an interactive MOK Manager confirmation at next boot), orValidation
pulp.prod.ciq.dev/ciq/cicd/lts-images/builder+lts-9.2-kernel-builder) against aciqlts9_2checkout: tarball appears atoutput/kernel-*.tar.xzand is a valid xz archivekernel-5.14.0-_jmaple__ciqlts9_2-01e4dfc2e+-x86_64.tar.xz(version + arch, no redundancy).kofiles on x86_64workflow_dispatch: https://github.com/ctrliq/kernel-src-tree/actions/runs/25837047151 — bothkernel-binaries-x86_64andkernel-binaries-aarch64artifacts published🤖 Generated with Claude Code