Uploaded image for project: 'RHEL'
  1. RHEL
  2. RHEL-31949

[RFE] Leapp IPU should raise inhibitor if grub2-pc-modules is not marked installed

    • Icon: Bug Bug
    • Resolution: Won't Do
    • Icon: Critical Critical
    • None
    • rhel-7.9
    • leapp-repository
    • None
    • Critical
    • sst_upgrades
    • False
    • Hide

      None

      Show
      None
    • x86_64

      What were you trying to do that didn't work?

      Perform Leapp IPU from RHEL 7 to RHEL 8 with grub2-pc-modules package removed from system

      Please provide the package NVR for which bug is seen:

      leapp-0.16.0-1.el7_9.noarch

      How reproducible:

      100%

      Steps to reproduce

      Remove grub2-pc-modules package

      1. rpm -e grub2 --justdb
      2. rpm -e grub2-pc-modules grub2-pc --justdb

      Proceed with leapp upgrade.
      Reboot

      Expected results

      Leapp should inhibit if grub2-pc-modules package is not listed installed in rpmdb

      Actual results

      Leapp doesn't detect this and shows no inhibitor
      System ends up in a grub> post successful leapp upgrade.

      Addition information

      With RHEL 8 we have introduced blscfg which is incorporated inside grub.cfg
      ~~~
      insmod blscfg
      blscfg
      ~~~

      There is a module that's needed by grub to work with blscfg `/boot/grub2/i386-pc/blscfg.mod` (increment.mod doesn't actually block using blscfg as per more in-depth reproducers confirmed but missing blscfg.mod is more problematic ).

      This module is provided by package grub2-pc-modules of el8 version and is not present in el7 version of the package.
      Since this package is not listed as installed leapp doesn't install el8 version and increment.mod is never added into system on /usr/lib/grub/i386-pc path .
      And grub2-install never pulls it in /boot/grub2/i386-pc path for grub to use during booting
      Hence we end up with grub> with no visible error.

      To be able to see this error the only way that exists is to load the config file within grub prompt

      grub> configfile (hd0,msdos1)/grub2/grub.cfg
      error: file '/grub2/i386-pc/increment.mod' not found
      error: can't find command 'blscfg'.

      This makes it very difficult to troubleshoot this issue.

            leapp-notifications leapp-notifications
            rhn-support-plawate Pranav Lawate
            leapp-notifications leapp-notifications
            RHEL Upgrades QE Team RHEL Upgrades QE Team
            Miriam Portman Miriam Portman
            Votes:
            4 Vote for this issue
            Watchers:
            7 Start watching this issue

              Created:
              Updated:
              Resolved: