Ignoring <package> because its extensions are not built. (3.1 upgrade)

Congrats on 3.1.

I’m running on RHEL9, and following the upgrade instructions I came across some minor issues:

# /opt/ood/ood-portal-generator/sbin/update_ood_portal
Ignoring date-3.3.3 because its extensions are not built. Try: gem pristine date --version 3.3.3
Ignoring ffi-1.15.5 because its extensions are not built. Try: gem pristine ffi --version 1.15.5
Ignoring nio4r-2.5.9 because its extensions are not built. Try: gem pristine nio4r --version 2.5.9
Ignoring racc-1.6.2 because its extensions are not built. Try: gem pristine racc --version 1.6.2
Ignoring unf_ext-0.0.8.2 because its extensions are not built. Try: gem pristine unf_ext --version 0.0.8.2
Ignoring websocket-driver-0.7.5 because its extensions are not built. Try: gem pristine websocket-driver --version 0.7.5
Ignoring date-3.3.3 because its extensions are not built. Try: gem pristine date --version 3.3.3
No change in Apache config.
Completed successfully!

Initial digging suggests the previous ondemand-gems rpm was built with the wrong name, causing yum/dnf to not upgrade it:

[root@ood-prod02 ~]# rpm -qa | grep ondemand
ondemand-gems-3.0.3-1-3.0.3-1.el9.x86_64
ondemand-release-web-3.1-1.el9.noarch
ondemand-runtime-3.1.4-1.el9.x86_64
ondemand-nginx-1.22.1-1.p6.0.17.ood3.1.4.el9.x86_64
ondemand-ruby-3.1.4-1.el9.x86_64
ondemand-passenger-6.0.17-1.ood3.1.4.el9.x86_64
ondemand-nodejs-3.1.4-1.el9.x86_64
ondemand-apache-3.1.4-1.el9.x86_64
ondemand-3.1.0-0.rc1.el9.x86_64
ondemand-selinux-3.1.0-0.rc1.el9.x86_64

[root@ood-prod02 ~]# dnf info ondemand-gems-3.0.3-1-3.0.3-1.el9.x86_64
[...]
Name         : ondemand-gems-3.0.3-1
Version      : 3.0.3
Release      : 1.el9
[...]
[root@ood-prod02 ~]# dnf info ondemand-gems
[...]
Name         : ondemand-gems
Version      : 3.1.0
Release      : 0.rc1.el9
[...]

Manually removed old version and installed new to fix:

[root@ood-prod02 ~]# rpm -e ondemand-gems-3.0.3-1
[root@ood-prod02 ~]# dnf -y install ondemand-gems
Updating Subscription Management repositories.
[...]
Installed:
  ondemand-gems-3.1.0-0.rc1.el9.x86_64                                                                                                                                                                                                                                                  
Complete!
[root@ood-prod02 ~]# /opt/ood/ood-portal-generator/sbin/update_ood_portal
No change in Apache config.
Completed successfully!
[root@ood-prod02 ~]#

I also note the -rc1. Does this mean new RPMs are incoming, or that rc1 became 3.1 without change?

Cheers,
Andreas

We observed the gem extension issue with some of the RC releases and it was cleared up with subsequent builds.

The 3.1.0 packages are a distinct build after the RC releases. There was a manual step missed to sync RPMs into the 3.1 repo, and that step is now complete so you can now upgrade to 3.1.0-1 RPMs.

Also those “ondemand-gems-” RPMs will not go away unless you uninstall them. The idea was that if you build a Ruby app against 3.1.0, then install 3.1.2 with new Gem dependencies, we didn’t want apps built with 3.1.0 to suddenly break from that update. Once you’ve upgraded all your apps to be built with OnDemand 3.1.0 you can do something like:

dnf remove ondemand-gems-3.0\*

I see you’ve update the repo metadata, and after a dnf clean all; dnf -y update I now get 3-1.0-1 versions of the RPMs.