Bug 2223957 - RHEL 9.2 cannot install when Kickstart command `cdrom` is set
Summary: RHEL 9.2 cannot install when Kickstart command `cdrom` is set
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: Red Hat Enterprise Linux 9
Classification: Red Hat
Component: Documentation
Version: 9.2
Hardware: x86_64
OS: Linux
high
medium
Target Milestone: rc
: ---
Assignee: Sagar Dubewar
QA Contact:
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2023-07-19 12:06 UTC by Andreas Lindhé
Modified: 2023-07-24 12:12 UTC (History)
2 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2023-07-24 12:12:25 UTC
Type: Bug
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)
ZIP file containing my MWE for reproducing the bug, including the offending Kickstart file (ks.cnf). (1.65 KB, application/zip)
2023-07-19 12:06 UTC, Andreas Lindhé
no flags Details


Links
System ID Private Priority Status Summary Last Updated
Red Hat Issue Tracker RHELPLAN-162734 0 None None None 2023-07-19 12:46:05 UTC

Description Andreas Lindhé 2023-07-19 12:06:15 UTC
Created attachment 1976498 [details]
ZIP file containing my MWE for reproducing the bug, including the offending Kickstart file (ks.cnf).

Description of problem:

I am unable to install RHEL 9.2 using a Kickstart file with the `cdrom` command specified.

* In RHEL 8.8, installation works with or without cdrom specified
* In RHEL 9.2, installation works without cdrom specified
* In RHEL 9.2, installation does not work with cdrom specified

Version-Release number of selected component (if applicable):

Red Hat Enterprise Linux 9.2 Boot ISO (Network install image)


How reproducible:

I have created a MWE for reliably reproducing the bug using Packer in a VMware vSphere environment, please see attached files. It is particularly ks.cfg that is of interest – I believe that the only important part of my example is the `cdrom` line in that file.

The Kickstart file looks like this:

```
autopart
cdrom
clearpart --none --initlabel
cmdline
network --bootproto=dhcp
rhsm --organization=${subscription_org} --activation-key=${subscription_key}
rootpw --lock

%packages
@^minimal-environment
%end
```


Here is a TL;DR of my attached example for reproducing the bug:
1. Start a new machine and have both an ISO with RHEL 9.2 mounted as well as a CD with my ks.cfg on it for Kickstart installation.
2. Wait for the installer to crash.

Actual results:

```
================================================================================
================================================================================
Installation

1) [x] Language settings                    2) [x] Time settings
       (English (United States))                   (Europe/Stockholm timezone)
3) [!] Installation source                  4) [!] Software selection
       (Error setting up software                  (Error checking software
       source)                                     selection)
5) [x] Installation Destination             6) [x] Kdump
       (Automatic partitioning                     (Kdump is enabled)
       selected)
7) [x] Network configuration
       (Connected: ens192)

The installation was stopped due to an error which occurred while running in non-interactive cmdline
 mode. Since there cannot be any questions in cmdline mode, edit your kickstart file and retry insta
llation.
The exact error message is:

The following mandatory spokes are not completed:
Installation source
Software selection.

The installer will now terminate.
```


Expected results:

I expect the installer to automatically select Red Hat CDN as installation source and progress successfully.


Additional info:

What option should I set to select Red Hat CDN as the installation source?

Comment 1 Jan Stodola 2023-07-19 12:24:28 UTC
Andreas,
if you want to install from Red Hat CDN, do not include "cdrom" in the kickstart file. It has a higher priority than the "rhsm" command for selecting the installation source.

See the "Important" section of the rhsm kickstart command:
https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/9/html/performing_an_advanced_rhel_9_installation/kickstart-commands-and-options-reference_installing-rhel-as-an-experienced-user#rhsm_kickstart-commands-for-installation-program-configuration-and-flow-control

Since you used "cdrom" in the kickstart file and your installation ISO is just boot.iso without any packages, the error you are seeing is expected.

Comment 2 Andreas Lindhé 2023-07-19 12:45:46 UTC
Hi Jan!

Thanks for getting back to me so quickly.

1. Oh, I see. That's a bit confusing to me, thanks a lot for pointing it out!

I had glanced over that but thought that I had to perform some additional step (like adding `cdrom`), because it says in the requirements that "you must meet the following conditions: On the kernel command line, you have used inst.stage2=<URL> to fetch the installation image but have not specified an installation source using inst.repo=.". And I have not used inst.stage2 since I didn't know what URL to put there. What URL should I use to use the default Red Hat CDN?

Also, I was confused because when I read about `cdrom` it says "To actually run the installation, one of cdrom, harddrive, hmc, nfs, liveimg, or url must be specified." and since I didn't know what to write for the other commands I assumed that `cdrom` was good. Especially since it worked in 8.8. See docs for `cdrom` here:
https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/9/html/performing_an_advanced_rhel_9_installation/kickstart-commands-and-options-reference_installing-rhel-as-an-experienced-user#cdrom_kickstart-commands-for-installation-program-configuration-and-flow-control

2. Is it a bug that it works in RHEL 8.8 then? I see no comments about breaking changes in the `cdrom` command between 8.8 and 9.2.

Comment 3 Andreas Lindhé 2023-07-19 12:49:54 UTC
Another thing that confused me was that I originally generated the Kickstart file using the online tool:
https://access.redhat.com/labs/kickstartconfig/

And that lists a number of options for installation source (DVD, NFS, FTP, HTTP, Hard Drive, OS-Tree), but not CDN. So I just left it on its default setting, DVD, which I guess gave me the `cdrom` option.

Is it possible to use the online tool to generate a Kickstart file that uses the CDN as installation source?

Comment 4 Jan Stodola 2023-07-19 13:07:25 UTC
(In reply to Andreas Lindhé from comment #2)

> I had glanced over that but thought that I had to perform some additional
> step (like adding `cdrom`), because it says in the requirements that "you
> must meet the following conditions: On the kernel command line, you have
> used inst.stage2=<URL> to fetch the installation image but have not
> specified an installation source using inst.repo=.". And I have not used
> inst.stage2 since I didn't know what URL to put there. What URL should I use
> to use the default Red Hat CDN?

inst.stage2 is set on the kernel cmdline of both boot.iso and dvd.iso by default, so you do not have to set/change it. Both ISOs contain stage2, to the installer get it from there. Getting stage2 from CDN is not possible.

> Also, I was confused because when I read about `cdrom` it says "To actually
> run the installation, one of cdrom, harddrive, hmc, nfs, liveimg, or url
> must be specified." and since I didn't know what to write for the other
> commands I assumed that `cdrom` was good. Especially since it worked in 8.8.
> See docs for `cdrom` here:
> https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/9/
> html/performing_an_advanced_rhel_9_installation/kickstart-commands-and-
> options-reference_installing-rhel-as-an-experienced-user#cdrom_kickstart-
> commands-for-installation-program-configuration-and-flow-control

I see, this really might be confusing. The text should be extended a bit like this:

"To actually run the installation, one of cdrom, harddrive, hmc, nfs, liveimg, rhsm, or url must be specified unless the inst.repo option is specified on the kernel command line."

The text is mentioned several times in the documentation, so all occurrences should be updated.

> 
> 2. Is it a bug that it works in RHEL 8.8 then? I see no comments about
> breaking changes in the `cdrom` command between 8.8 and 9.2.

The behavior should be the same. Can you please double check you did not used the full "dvd.iso" when testing RHEL-8?

Comment 5 Jan Stodola 2023-07-19 13:12:30 UTC
(In reply to Andreas Lindhé from comment #3)
> Another thing that confused me was that I originally generated the Kickstart
> file using the online tool:
> https://access.redhat.com/labs/kickstartconfig/
> 
> And that lists a number of options for installation source (DVD, NFS, FTP,
> HTTP, Hard Drive, OS-Tree), but not CDN. So I just left it on its default
> setting, DVD, which I guess gave me the `cdrom` option.
> 
> Is it possible to use the online tool to generate a Kickstart file that uses
> the CDN as installation source?

I've requested adding "rhsm" as another installation source into the Kickstart Generator tool:
https://access.redhat.com/labsinfo/kickstartconfig#comment-2359765

Comment 6 Andreas Lindhé 2023-07-19 13:19:44 UTC
> The behavior should be the same. Can you please double check you did not used the full "dvd.iso" when testing RHEL-8?

I'm pretty sure it's not the full dvd.iso. The one I tried has a size of 926,720 KB and checksum sha256:1419ea8ae06722f858734bcc8060285314c335522e2086f0963941cd00432f8c

> I've requested adding "rhsm" as another installation source into the Kickstart Generator tool:
> https://access.redhat.com/labsinfo/kickstartconfig#comment-2359765

That's great! Thank you so much!

Comment 7 Jan Stodola 2023-07-20 11:48:12 UTC
(In reply to Andreas Lindhé from comment #6)
> > The behavior should be the same. Can you please double check you did not used the full "dvd.iso" when testing RHEL-8?
> 
> I'm pretty sure it's not the full dvd.iso. The one I tried has a size of
> 926,720 KB and checksum
> sha256:1419ea8ae06722f858734bcc8060285314c335522e2086f0963941cd00432f8c

You are right, when both "rhsm" and "cdrom" kickstart commands are present in a RHEL-8 kickstart file, the installer behaves like this (depending on the ISO file used):
boot.iso: no failure, CDN installation source is used
dvd.iso: no failure, cdrom installation source is used

Comment 8 Jan Stodola 2023-07-20 12:00:20 UTC
I'm re-assigning the bug to Documentation to improve the installation guide for the following kickstart commands: cdrom, harddrive, liveimg, nfs, url

Proposing to change the following sentence:
"To actually run the installation, one of cdrom, harddrive, hmc, nfs, liveimg, or url must be specified."

to:
"To actually run the installation, one of cdrom, harddrive, hmc, nfs, liveimg, ostreesetup, rhsm, or url must be specified unless the inst.repo option is specified on the kernel command line."

The change should be done for both rhel-8 and rhel-9 installation docs:
https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/8/html/performing_an_advanced_rhel_8_installation/kickstart-commands-and-options-reference_installing-rhel-as-an-experienced-user#doc-wrapper
https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/9/html/performing_an_advanced_rhel_9_installation/kickstart-commands-and-options-reference_installing-rhel-as-an-experienced-user#doc-wrapper

Comment 11 Sagar Dubewar 2023-07-24 12:12:25 UTC
(In reply to Jan Stodola from comment #8)
> I'm re-assigning the bug to Documentation to improve the installation guide
> for the following kickstart commands: cdrom, harddrive, liveimg, nfs, url
> 
> Proposing to change the following sentence:
> "To actually run the installation, one of cdrom, harddrive, hmc, nfs,
> liveimg, or url must be specified."
> 
> to:
> "To actually run the installation, one of cdrom, harddrive, hmc, nfs,
> liveimg, ostreesetup, rhsm, or url must be specified unless the inst.repo
> option is specified on the kernel command line."
> 
> The change should be done for both rhel-8 and rhel-9 installation docs:
> https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/8/
> html/performing_an_advanced_rhel_8_installation/kickstart-commands-and-
> options-reference_installing-rhel-as-an-experienced-user#doc-wrapper
> https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/9/
> html/performing_an_advanced_rhel_9_installation/kickstart-commands-and-
> options-reference_installing-rhel-as-an-experienced-user#doc-wrapper

The proposed changes have been made to the document and no more updates are pending on this issue, hence closing it for now. In case any more updates are required, feel free to reopen this issue or create a new one. 

Here is the link to the updated documentation for reference:
https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/9/html-single/performing_an_advanced_rhel_9_installation/index#cdrom_kickstart-commands-for-installation-program-configuration-and-flow-control

https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/8/html-single/performing_an_advanced_rhel_8_installation/index#cdrom_kickstart-commands-for-installation-program-configuration-and-flow-control

I am closing this now but in case anyone's action is pending on it, feel free to reopen this issue. 

thanks again.


Note You need to log in before you can comment on or make changes to this bug.