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

IPU 9 -> 10: ipa-server breaks the in-place upgrade due to failed scriptlet

Linking RHIVOS CVEs to...Migration: Automation ...Sync from "Extern...XMLWordPrintable

    • ipa-4.12.2-15.el9
    • No
    • Important
    • 1
    • rhel-sst-idm-ipa
    • rhel-sst-idm-ipa
    • ssg_idm
    • 6
    • 8
    • 2
    • QE ack, Dev ack
    • False
    • Hide

      None

      Show
      None
    • No
    • 2025-Q2-Bravo-S2
    • Unspecified Release Note Type - Unknown
    • Unspecified
    • Unspecified
    • Unspecified
    • All
    • None

      The ipa-server rpm breaks the upgrade DNF transaction when upgrading RHEL 9 to RHEL 10 as the preun scriptlet is not properly written to be compatible with leapp upgrades:

      [  192.092980] upgrade[839]:               Running scriptlet: ipa-server-4.12.2-13.el9.x86_64                   936/1837
      [  192.093177] upgrade[839]:             System has not been booted with systemd as init system (PID 1). Can't operate.
      [  192.093366] upgrade[839]:             Failed to connect to system scope bus via local transport: Host is down
      [  192.093558] upgrade[839]:             System has not been booted with systemd as init system (PID 1). Can't operate.
      [  192.093661] upgrade[839]:             Failed to connect to system scope bus via local transport: Host is down
      [  192.093863] upgrade[839]:             System has not been booted with systemd as init system (PID 1). Can't operate.
      [  192.094140] upgrade[839]:             Failed to connect to system scope bus via local transport: Host is down
      [  192.094334] upgrade[839]:             error: %preun(ipa-server-4.12.2-13.el9.x86_64) scriptlet failed, exit status 1
      [  192.094527] upgrade[839]:             
      

      The current implementation inside leapp-repository component inhibit the upgrade if ipa-server rpm signed by RH is installed and configured. However, if the system has installed the package but IPA server is not configured, the inhibitor is not raised and the upgrade crashes after the point-of-no-return. Visible from the machine before the upgrade:

      Type: IpaInfo
      Message_data:
      {
          "has_client_package": true,
          "has_server_package": true,
          "is_client_configured": false,
          "is_server_configured": false
      }
      

      RHEL RPMs must not damage the upgrade transaction and scriptlets in RPMs must be adjusted properly so issue like this does not happen. For this purposes you can check e.g. "LEAPP_IPU_IN_PROGRESS" envar inside the scriptlet to see whether the in-place upgrade between major versions of RHEL is running. The envar has in such a case value "XtoY" where X and Y are source and target major versions of RHEL systems where the upgrade is happening. In case of IPU 9 -> 10, it would be "9to10".

      Expected result:
      The scriptlet is properly adjusted so it does not fail during the DNF upgrade transaction executed during the upgrade of the system with leapp (when LEAPP_IPU_IN_PROGRESS is set)

      Additional info:
      Note that this particular DNF transaction is executed from the container, so it's expected that systemd is not running, etc..

              frenaud@redhat.com Florence Renaud
              pstodulk@redhat.com Petr Stodulka
              Florence Renaud Florence Renaud
              Anuja More Anuja More
              Votes:
              0 Vote for this issue
              Watchers:
              9 Start watching this issue

                Created:
                Updated: