Bug 818261

Summary: candlepin-cert-consumer rpm not installable on RHEL5 - rpmlib(PayloadIsXz) <= 5.2-1 is needed
Product: Red Hat Satellite Reporter: Shveta <ssachdev>
Component: InstallationAssignee: Lukas Zapletal <lzap>
Status: CLOSED ERRATA QA Contact: Corey Welton <cwelton>
Severity: high Docs Contact:
Priority: unspecified    
Version: 6.0.0CC: achan, cpelland, dmacpher, inecas, jlaska, mmccune, omaciel, snansi
Target Milestone: UnspecifiedKeywords: Triaged, ZStream
Target Release: Unused   
Hardware: x86_64   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
The katello-built candlepin-cert package cannot be installed on Red Hat Enterprise Linux 5 systems. This fix sets build macros to use algorithms supported in Red Hat Enterprise Linux 5. The candlepin-cert package should now install on a Red Hat Enterprise Linux 5 system.
Story Points: ---
Clone Of:
: 827557 (view as bug list) Environment:
Last Closed: 2012-12-04 19:45:07 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: 827557    

Description Shveta 2012-05-02 15:23:00 UTC
Description of problem:


Version-Release number of selected component (if applicable):


How reproducible:


Steps to Reproduce:
1. Used https://qeblade31.rhq.lab.eng.bos.redhat.com/templates/Dev/rhel-x86_64-6.2-cf-tools.xml to build and push image for Rhev and Vsphere

2. ssh to Instance and 

yum -y install http://qeblade31.rhq.lab.eng.bos.redhat.com/pub/candlepin-cert-consumer-qeblade31.rhq.lab.eng.bos.redhat.com-1.0-1.noarch.rpm
Loaded plugins: katello, product-id, security, subscription-manager
Updating certificate-based repositories.
Unable to read consumer identity
Setting up Install Process
No package http://qeblade31.rhq.lab.eng.bos.redhat.com/pub/candlepin-cert-consumer-qeblade31.rhq.lab.eng.bos.redhat.com-1.0-1.noarch.rpm available.
Nothing to do

or 

rpm -Uvh http://qeblade31.rhq.lab.eng.bos.redhat.com/pub/candlepin-cert-consumer-qeblade31.rhq.lab.eng.bos.redhat.com-1.0-1.noarch.rpm
Retrieving http://qeblade31.rhq.lab.eng.bos.redhat.com/pub/candlepin-cert-consumer-qeblade31.rhq.lab.eng.bos.redhat.com-1.0-1.noarch.rpm
error: Failed dependencies:
	rpmlib(FileDigests) <= 4.6.0-1 is needed by candlepin-cert-consumer-qeblade31.rhq.lab.eng.bos.redhat.com-1.0-1.noarch
	rpmlib(PayloadIsXz) <= 5.2-1 is needed by candlepin-cert-consumer-qeblade31.rhq.lab.eng.bos.redhat.com-1.0-1.noarch

3. 
  
Actual results:


Expected results:


Additional info:

rpm -qa|grep aeolus
aeolus-conductor-0.8.13-1.el6_2.noarch
aeolus-configure-2.5.3-1.el6.noarch
rubygem-aeolus-image-0.3.0-12.el6.noarch
rubygem-aeolus-cli-0.3.1-1.el6.noarch
aeolus-all-0.8.13-1.el6_2.noarch
aeolus-conductor-doc-0.8.13-1.el6_2.noarch
aeolus-conductor-daemons-0.8.13-1.el6_2.noarch


========================================================

cat /var/log/audrey.log 
2012-05-02 08:31:31,290 - ERROR   : audrey:93 Failed accessing RHEVm user data.

Comment 1 James Laska 2012-05-02 15:26:17 UTC
Reassigning to the proper component.

The script used by katello-configure to generate the candlepin-cert package is called gen-rpm.sh

# rpm -qf /usr/share/katello/certs/gen-rpm.sh
katello-certs-tools-1.0.4-1.el6.noarch

Comment 2 Mike McCune 2012-05-02 15:41:47 UTC
Too late to fix for 1.0.0 but will consider for 1.0.z

Comment 3 James Laska 2012-05-02 15:54:27 UTC
== Description of problem ==

The katello-built candlepin-cert is uninstallable on RHEL5 systems.  This package is used to streamline the configuration process for deployed instances.  Use of this package is documented in the Cloud Engine User guide [1] (7.4. Using Runtime Configuration with System Engine Registration).

This previously was tested and determined to work fine with beta6.  I'm unclear why this previously worked, but fails now.

[1] http://documentation-stage.bne.redhat.com/docs/en-US/CloudForms/1.0/html/Cloud_Engine_User_Guide/chap-Cloud_Engine_User_Guide-Runtime_Config-System_Engine_Registration.html

== Workaround ==

1) On your katello system, rebuild the candlepin-cert package without Xz payload support

# cd /var/www/html/pub
# rpmbuild --rebuild --define "_source_filedigest_algorithm md5" --define "_binary_filedigest_algorithm md5" --define "_source_payload nil" --define "_binary_payload nil" candlepin-cert-consumer-*.src.rpm
# cp /root/rpmbuild/RPMS/noarch/candlepin-cert-consumer-*.noarch.rpm .

# rpm -Uvh http://qeblade31.rhq.lab.eng.bos.redhat.com/pub/candlepin-cert-consumer-qeblade31.rhq.lab.eng.bos.redhat.com-1.0-1.noarch.rpm
Retrieving http://qeblade31.rhq.lab.eng.bos.redhat.com/pub/candlepin-cert-consumer-qeblade31.rhq.lab.eng.bos.redhat.com-1.0-1.noarch.rpm
Preparing...                ########################################### [100%]
   1:candlepin-cert-consumer########################################### [100%]

Comment 4 James Laska 2012-05-02 15:54:28 UTC
    Technical note added. If any revisions are required, please edit the "Technical Notes" field
    accordingly. All revisions will be proofread by the Engineering Content Services team.
    
    New Contents:
See comment#3 for suggested workaround and problem identification

Comment 5 James Laska 2012-05-02 17:54:41 UTC
== Additional information ==

This is the first time I've performed my end-to-end testing using a beaker provisioned system.  The initial install %packages used by beaker differ from what I as testing with originally (@Base).

The beaker provisioned system includes the redhat-rpm-config package.  This packaging provides the following macro:

> # rpm -ql redhat-rpm-config | xargs grep -i payload
> /usr/lib/rpm/redhat/macros:# Use XZ compression for binary payloads
> /usr/lib/rpm/redhat/macros:%_binary_payload w2.xzdio

When configuring katello (katello-configure) on a RHEL system with the redhat-rpm-config package installed, katello will create a candlepin-cert-consumer RPM that is not installable on RHEL5 systems.

To avoid this bug, run be sure that redhat-rpm-config is *not* installed when running 'katello-configure'

After it happens, to work around this problem, run the following commands to rebuild a RHEL5 installable candlepin-cert-consumer RPM.

> # cd /var/www/html/pub
> # rpmbuild --rebuild --define "_source_filedigest_algorithm md5" --define "_binary_filedigest_algorithm md5" --define "_source_payload nil" --define "_binary_payload nil" candlepin-cert-consumer-*.src.rpm
> # cp /root/rpmbuild/RPMS/noarch/candlepin-cert-consumer-*.noarch.rpm .

To prevent this problem from happening in the future, the gen-rpm.sh script (provided by katello-cert-tools) will need to use the proper rpmbuild parameters.

Comment 6 James Laska 2012-05-02 17:54:41 UTC
    Technical note updated. If any revisions are required, please edit the "Technical Notes" field
    accordingly. All revisions will be proofread by the Engineering Content Services team.
    
    Diffed Contents:
@@ -1 +1 @@
-See comment#3 for suggested workaround and problem identification+See comment#5 for suggested workaround and problem identification

Comment 7 Ivan Necas 2012-05-03 09:05:02 UTC
Fixed in commit 37554b36250e475a24d2b63ffe7b574dfc257563 - setting build macros to use algorithms supported in RHEL5

Comment 9 Mike McCune 2012-05-10 23:51:54 UTC
This should not be MODIFIED, it should be ON_DEV unless a cherry-pick has taken place into system-engine which I don't see having happened.

Comment 12 Corey Welton 2012-09-19 14:44:23 UTC
QE Verified, can now install cert on a rhel5 system.

Comment 14 errata-xmlrpc 2012-12-04 19:45:07 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.

http://rhn.redhat.com/errata/RHSA-2012-1543.html