diskimage-builder/diskimage_builder/elements/rhel
Steve Baker 4376f66407 rhel: work around RHEL-9 BLS issues
Similar to the CentOS-9-Stream fix [1] this change renames the default
BLS entry to match the current machine-id so that grub2-mkconfig calls
will refresh the kernel options.

However there is an additional issue with the rhel-9 base image. It is
unique in having a dedicated boot partition, so the path to the kernel
and initramfs don't include /boot. This results in an unbootable image
when /boot is a directory of the root partition.

These paths do not get corrected by calling grub2-mkconfig, so this
change performs a sed on the paths to fix them for a root partition
/boot.

[1] I327f5e7a95e47905c01138c8c4483f3f03e8efff
Change-Id: I37a1d310e1854f4a49725e355d484e456ea4fc7a
2022-02-22 13:43:18 +13:00
..
environment.d Add DIB_YUM_REPO_PACKAGE as an alternative to DIB_YUM_REPO_CONF 2021-09-13 09:32:53 +12:00
pre-install.d rhel: work around RHEL-9 BLS issues 2022-02-22 13:43:18 +13:00
root.d Add aarch64 support for rhel 2021-03-08 07:00:15 +00:00
element-deps Add version-less RHEL element for RHEL7 and RHEL8 2019-05-29 11:28:53 +03:00
element-provides Add version-less RHEL element for RHEL7 and RHEL8 2019-05-29 11:28:53 +03:00
README.rst Add version-less RHEL element for RHEL7 and RHEL8 2019-05-29 11:28:53 +03:00

====
rhel
====

Use RHEL cloud images as the baseline for built disk images.

Because RHEL base images are not publicly available, it is necessary to first
download the RHEL cloud image from the Red Hat Customer Portal and pass the
path to the resulting file to disk-image-create as the ``DIB_LOCAL_IMAGE``
environment variable.

The cloud image can be found at (login required):
RHEL8: https://access.redhat.com/downloads/content/479/ver=/rhel---8/8.0/x86_64/product-software
RHEL7: https://access.redhat.com/downloads/content/69/ver=/rhel---7/7.1/x86_64/product-downloads


Then before running the image build, define DIB_LOCAL_IMAGE (replace the file
name with the one downloaded, if it differs from the example):

.. code-block:: bash

   export DIB_LOCAL_IMAGE=rhel-8.0-x86_64-kvm.qcow2

The downloaded file will then be used as the basis for any subsequent image
builds.

For further details about building RHEL images, see the rhel-common and
redhat-common element README files.

Environment Variables
---------------------

DIB_LOCAL_IMAGE
  :Required: Yes
  :Default: None
  :Description: The RHEL 8 base image you have downloaded. See the element
                description above for more details.
  :Example: ``DIB_LOCAL_IMAGE=/tmp/rhel8-cloud.qcow2``