-
Notifications
You must be signed in to change notification settings - Fork 0
Enable CIQ Kernel 6.12 Packaging #1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
This commit brings in the upstream kernel-ark packaging tree. It includes all the necessary scripts, Makefiles, and configuration files which will be used for our CIQ kernel packaging.
Replace all hardcoded references to "redhat" with "ciq" in KABI related scripts.
All packaging-related Makefiles and relevant variables now use the 'ciq' prefix instead of 'redhat'. In addition, several Rocky specific acros have been defined to ensure the build system selects the correct configurations.
Renamed occurrences of "redhat" to "ciq" in packaging scripts. Also enabled Rocky flavor support during spec file generation to ensure proper macro substitution and build compatibility.
Introduced minimal stub implementations for config generation scripts to allow builds to proceed using pre-built kernel configs.
Updated the kernel spec template to add support for Rocky flavor. This includes adding Rocky-specific config sources, enabling the necessary macros, and updating build-time logic to ensure compatibility with CIQ’s kernel configuration and packaging workflow.
Added kernel.spec to the CIQ SPECS directory and captured autogenerated filtermods logs for troubleshooting.
ciq/BugsFixed
Outdated
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do we know what this is for?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not sure. This got generated in the PR. Let me look into it.
Ummm you might have issues with the |
ciq/kabi/diff-kabi
Outdated
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We should delete all of ciq/kabi/*
The commit reverts certain macros that were added during testing.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Still chunking through but here is my half way.
ciq/kabi/symtype-generate
Outdated
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We should delete all of ciq/kabi/*
ciq/kabi/update-kabi
Outdated
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We should delete all of ciq/kabi/*
Makefile.rhelver
Outdated
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
File name and still uses rhelver
KABI_TARBALL:=$(CIQ)/kernel-abi-stablelists-$(SPECKABIVERSION).tar.xz | ||
KABIDW := $(CIQ)/kabi-dwarf | ||
KABIDW_TARBALL:=$(CIQ)/kernel-kabi-dw-$(SPECKABIVERSION).tar.xz |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Goes with last comments we can strip all the KABI stuff
ciq/Makefile
Outdated
$(REDHAT)/kabi/show-kabi -k $(REDHAT)/kabi/kabi-module/ -m \ | ||
-a $$KABIARCH -r $(RHEL_MAJOR).$(RHEL_MINOR) > $(REDHAT)/kabi/Module.kabi_$$KABIARCH;\ | ||
$(CIQ)/kabi/show-kabi -k $(CIQ)/kabi/kabi-module/ -m \ | ||
-a $$KABIARCH -r $(RHEL_MAJOR).$(RHEL_MINOR) > $(CIQ)/kabi/Module.kabi_$$KABIARCH;\ | ||
for i in {0..$(RHEL_MINOR)}; do \ | ||
mkdir -p $(REDHAT)/kabi/kabi-rhel$(RHEL_MAJOR)$$i/;\ | ||
$(REDHAT)/kabi/show-kabi -k $(REDHAT)/kabi/kabi-module/ -s -a $$KABIARCH \ | ||
-r $(RHEL_MAJOR).$$i > $(REDHAT)/kabi/kabi-rhel$(RHEL_MAJOR)$$i/kabi_stablelist_$$KABIARCH;\ | ||
mkdir -p $(CIQ)/kabi/kabi-rhel$(RHEL_MAJOR)$$i/;\ | ||
$(CIQ)/kabi/show-kabi -k $(CIQ)/kabi/kabi-module/ -s -a $$KABIARCH \ | ||
-r $(RHEL_MAJOR).$$i > $(CIQ)/kabi/kabi-rhel$(RHEL_MAJOR)$$i/kabi_stablelist_$$KABIARCH;\ | ||
done;\ | ||
done; | ||
@(cd $(REDHAT)/kabi/ && ln -Tsf kabi-rhel$(RHEL_MAJOR)$(RHEL_MINOR) kabi-current) | ||
@(cd $(CIQ)/kabi/ && ln -Tsf kabi-rhel$(RHEL_MAJOR)$(RHEL_MINOR) kabi-current) | ||
|
||
dist-kabi-dup: dist-python-check | ||
@for KABIARCH in $(ARCH_LIST); do \ | ||
touch $(REDHAT)/kabi/Module.kabi_dup_$$KABIARCH;\ | ||
if [ -d $(REDHAT)/kabi/kabi-dup-module/kabi_$$KABIARCH ]; then \ | ||
$(REDHAT)/kabi/show-kabi -k $(REDHAT)/kabi/kabi-dup-module/ -m \ | ||
touch $(CIQ)/kabi/Module.kabi_dup_$$KABIARCH;\ | ||
if [ -d $(CIQ)/kabi/kabi-dup-module/kabi_$$KABIARCH ]; then \ | ||
$(CIQ)/kabi/show-kabi -k $(CIQ)/kabi/kabi-dup-module/ -m \ | ||
-a $$KABIARCH -r $(RHEL_MAJOR).$(RHEL_MINOR) > \ | ||
$(REDHAT)/kabi/Module.kabi_dup_$$KABIARCH;\ | ||
$(CIQ)/kabi/Module.kabi_dup_$$KABIARCH;\ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Goes with last commits we can strip all the KABI stuff
ciq/fedora-srpm.sh
Outdated
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Probably unneeded
ciq/gitlab/schedule-environment.yml
Outdated
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Carry over from Fedora, we don't have Gitlab
ciq/kernel.spec.template
Outdated
update_target=%{primary_target} | ||
#update_target=%{primary_target} | ||
update_target=rocky |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
you define primary_target
above to rocky so it should be kept that way
ciq/kernel.spec.template
Outdated
python3 %{SOURCE151} %{SOURCE152} $KernelAddonsDirOut virt %{primary_target} %{_target_cpu} | ||
python3 %{SOURCE151} %{SOURCE152} $KernelAddonsDirOut virt rocky %{_target_cpu} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
See above
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do we actually want any for the RHEL keys in our kernel?
ciq/koji/Makefile
Outdated
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We don't use Koji can probably nuke this unless we want it for reference
ciq/rebase-notes.txt
Outdated
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Drop this we likely didn't do any of this
ciq/release_targets
Outdated
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
These are Fedora versions I believe ... we might want this if we're going to to Rocky9 and Rocky10 UserSapces
Since CIQ does not use the same Config generation system as Fedora/RedHat and we do make olddefconfig to catch new and changed configs from upstream we do not have some of the markers that Fedora/RedHat have in their config. Our condition is a little easier we only support aarch64 and x86_64, however the upstream kernel knows aarch64 as arm64 so you can't use _cput_target directly. In this case we have a simple if else. Should we need anything more complex than this single if statement we need to scrape the arch out of the config headers.
Internal follow-up tickets have been created to address the comments raised on this PR. |
This commit adds the secure boot certs and macros for building our kernel on our secure boot builders. Signed-off-by: Michael L. Young <[email protected]> LE-2746
Adding CIQ secure boot to the kernel spec template
This PR is based on a new branch synced from the 6.12.15 tag of the kernel-src-tree and serves as the foundation for CIQ's custom kernel packaging and release workflows.
We're introducing a functional CIQ kernel packaging setup based on the kernel-ark infrastructure. It includes updates to Makefiles, spec templates, config stubs, and scripts to support the Rocky flavor. Major changes include enabling Rocky-specific macros, adjusting naming conventions, stubbing config generation for pre-provided configs, and integrating necessary filters and build logic. The result is a clean, modular build system tailored for CIQ’s kernel needs, with support for generating SRPMs and binary packages for the Rocky Linux target.