Bug 1598080

Summary: Provide rubygem-facter package in Server and Capsule repos
Product: Red Hat Satellite Reporter: Lukas Zapletal <lzap>
Component: PackagingAssignee: satellite6-bugs <satellite6-bugs>
Status: CLOSED ERRATA QA Contact: Nikhil Kathole <nkathole>
Severity: high Docs Contact:
Priority: unspecified    
Version: 6.4CC: ekohlvan, lzap, nkathole
Target Milestone: 6.4.0Keywords: Triaged
Target Release: Unused   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: foreman-discovery-image-3.5.1 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2018-10-16 18:57:36 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1598020    

Description Lukas Zapletal 2018-07-04 10:00:46 UTC
Hello!

We ship two facters:

puppet-agent = facter 3.x
tfm-rubygem-facter = facter 2.x

Foreman discover image relies on Facter 2.x and previously the package named "facter" was actually provided by rubygem-facter. This changed and it is now facter3 (puppet-agent) which breaks FDI completely - it does not boot up.

Please add non-SCL version (rubygem-facter) back into repos, we will change dependency from "facter" to "rubygem-facter" so build for Satellite 6.4 can be created. Ticket to refactor to puppet3 has been filed.

https://projects.theforeman.org/issues/24153
https://projects.theforeman.org/issues/24154

This is BLOCKER issue for FDI 3.5.0. We most likely want to allow users to install one or another for their clients which is benefit of shipping the package (they'd need to instal TFM ruby today).

This blocks FDI ALHPA build, setting higher severity. Thanks!

Comment 2 Ewoud Kohl van Wijngaarden 2018-07-04 10:16:00 UTC
> puppet-agent = facter 3.x
> tfm-rubygem-facter = facter 2.x

Facter always has ruby bindings, both facter 2 and facter 3. It's just that puppet-agent bundles its own ruby and installs the bindings for *that* ruby. tfm-rubygem-facter installs bindings for the tfm Ruby version. FDI uses the system ruby so the bindings are not available. In upstream we depend on a facter (without any prefix) from EPEL that installs its bindings in the system ruby.

In this case puppet-agent provides facter because it does install /opt/puppetlabs/bin/facter and is added to $PATH so it's sort of correct in the provides. Ideally the system facter would Provide: rubygem(facter) and we could depend on that but the one in EPEL/Fedora doesn't provide that either so it's not really a fix we can universally apply now.

Short term we should include an equivalent facter package as EPEL builds it. Longer term I think we should get that rubygem(facter) provides in.

Comment 12 Nikhil Kathole 2018-10-01 10:57:55 UTC
VERIFIED

Version tested:
Satellite 6.4 snap 24

Discovery is working with tfm-rubygem-facter-2.4.0-5.el7sat.x86_64 and foreman-discovery-image-3.5.3-1.el7sat.noarch.

Comment 13 Bryan Kearney 2018-10-16 18:57:36 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHSA-2018:2927