-
Notifications
You must be signed in to change notification settings - Fork 359
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
Add support for bootupd to RHEL 9 #5424
Conversation
bdba37b
to
502c537
Compare
/build-image --boot-iso |
Images built based on commit 502c537:
Download the images from the bottom of the job status page. |
- Enable read only sysroot in the ostree repo config. - Add `rw` to the kernel arguments to keep statefull parts of the system (/var & /etc) writable. - Update units tests to account for the new rw karg (cherry-picked from a commit 0e00c90) Related: RHEL-2250
Some of the bootloader options are not needed until the installation. If we apply them during the scheduling of the partitions, it won't be possible to change them after that, for example, from an add-on. Let's apply these options later, right before the bootloader installation. (cherry-picked from a commit dbac59a) Related: RHEL-17205
Move the implementation to the `InstallBootloaderTask` class. (cherry-picked from a commit e96bded) Related: RHEL-17205
Add a new method for collecting kernel arguments for the installation. (cherry-picked from a commit 6967994) Related: RHEL-17205
Use the `CollectKernelArgumentsTask` task to collect kernel arguments for the installation. It will be used by the bootupd support that needs to be able to collect kernel arguments without installing the bootloader. (cherry-picked from a commit 8a7641e) Related: RHEL-17205
502c537
to
c9f21cc
Compare
Original commit message from Colin Walters was: The https://github.com/coreos/bootupd project was created to fill the gap in bootloader management for ostree-based systems. When it was created, it was just integrated into Fedora CoreOS and derivatives; this left the Atomic Desktops (Silverblue etc.) as unfixed, and it was never used by RHEL for Edge. This PR is aiming to circle back and close that gap. We detect if bootupd is in the target root; if it is, then we skip the regular bootloader work, and just run bootupd to perform the installation. The other hacks we have around the grub config are no longer necessary in this mode. (cherry-picked from a commit 8e690d5) Resolves: RHEL-17205
(cherry-picked from a commit 0d42d2f) Related: RHEL-17205
This is an even newer behavior that takes over handling of the "UUID stamp files", which we want in general instead of using the static labels. Note `--write-uuid` implies `--with-static-configs`. This should fix this use case: ``` clearpart --all --initlabel --disklabel=gpt reqpart --add-boot part / --grow --fstype xfs ``` Whereas right now we require: ``` clearpart --all --initlabel --disklabel=gpt reqpart part /boot --size=1000 --fstype=ext4 --label=boot part / --grow --fstype xfs ``` Specifically the `--label=boot`. (cherry-picked from a commit 7b091de) Related: RHEL-17205
c9f21cc
to
a658b4b
Compare
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.
Preliminarily LGTM. Thanks!
/kickstart-test --testtype smoke |
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.
Looks good to me.
Updates the test by enabling the bootloader for this change: rhinstaller/anaconda#5424
Updates the test by enabling the bootloader for this change: rhinstaller/anaconda#5424
Updates the test by enabling the bootloader for this change: rhinstaller/anaconda#5424
Port the support for bootupd from #5350, #5342 and #5363.
Resolves: RHEL-17205
Depends on: #5427