Bug 981148

Summary: missing facter dependency for cartridge installation.
Product: OpenShift Container Platform Reporter: Johnny Liu <jialiu>
Component: ContainersAssignee: Brenton Leanhardt <bleanhar>
Status: CLOSED ERRATA QA Contact: libra bugs <libra-bugs>
Severity: medium Docs Contact:
Priority: medium    
Version: 1.2.0CC: baulakh, bleanhar, gpei, libra-onpremise-devel
Target Milestone: ---Keywords: Reopened
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
In some cases facter was not installed due to a missing RPM dependency. The missing RPM dependency has been added in the current release, and facter is now installed correctly.
Story Points: ---
Clone Of: Environment:
Last Closed: 2013-09-05 13:23:42 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:

Description Johnny Liu 2013-07-04 06:36:20 UTC
Description of problem:
openshift-origin-cartridge-jbosseap installation has dependency with facter package, which is not necessary.

This issue will cause tps rpm test failure, due to dependency issue.

Version-Release number of selected component (if applicable):
http://download.lab.bos.redhat.com/rel-eng/OpenShiftEnterprise/1.2/2013-07-02.1/JBoss_EAP6_Cartridge/x86_64/

How reproducible:
Always

Steps to Reproduce:
1. yum install openshift-origin-cartridge-jbosseap
2.
3.

Actual results:
openshift-origin-cartridge-jbosseap will pull in facter package as dependency, and facter packager is located in node repo.

Compare with other cartridge packages, e.g: php, jbossews cartridge, all the other cartridge does not have dependency with facter, so I think openshift-origin-cartridge-jbosseap cartridge spec file should be update to remove facter require. And I also manually remove facter, it looks like does not affect anything. app creation still succeed.

Expected results:
openshift-origin-cartridge-jbosseap should not have dependency with facter package.

Additional info:

Comment 2 Brenton Leanhardt 2013-07-05 12:05:45 UTC
cartridges/openshift-origin-cartridge-jbosseap/hooks/publish-http-url uses facter to get the ipaddress.  Please reopen if I'm mistaken!

Comment 3 Johnny Liu 2013-07-05 17:36:07 UTC
Actually facter command is called by other cartridge, e.g:
cartridges/openshift-origin-cartridge-python/hooks/publish-http-url:if ! gip=$(facter ipaddress); then
cartridges/openshift-origin-cartridge-mock/hooks/publish-http-url:if ! gip=$(facter ipaddress); then
cartridges/openshift-origin-cartridge-nodejs/hooks/publish-http-url:if ! gip=$(facter ipaddress); then
cartridges/openshift-origin-cartridge-perl/hooks/publish-http-url:if ! gip=$(facter ipaddress); then
cartridges/openshift-origin-cartridge-php/hooks/publish-http-url:if ! gip=$(facter ipaddress); then

So that means we also need pull into facter as dependency for other non-jboss cartridge, am I right?

Comment 4 Brenton Leanhardt 2013-07-05 17:45:27 UTC
That does seem to be the case.  How about we change the title of this BZ to be something like "missing cartridge facter dependencies"?  Feel free to reopen this one of create a new one that we'll fix in 1.2.1.

Comment 5 openshift-github-bot 2013-08-16 14:23:12 UTC
Commit pushed to master at https://github.com/openshift/origin-server

https://github.com/openshift/origin-server/commit/60cf74af057a300f752434ce7f34cdffb4db9530
Bug 981148 - missing facter dependency for cartridge installation

Comment 7 Gaoyun Pei 2013-08-19 06:05:30 UTC
All he web cartridges have facter as one of its dependencies in puddle 1.2/2013-08-16.2, so verify this bug.

[root@node ~]# for i in $(rpm -qa|grep openshift-origin-cartridge); do echo $i && yum deplist $i |grep facter ; done
openshift-origin-cartridge-postgresql-0.2.7-1.1.el6op.noarch
openshift-origin-cartridge-perl-0.4.8.2-1.el6op.noarch
  dependency: facter
   provider: facter.x86_64 1.6.6-1.el6op
openshift-origin-cartridge-diy-0.4.8-1.1.el6op.noarch
openshift-origin-cartridge-php-0.4.9.2-1.el6op.noarch
  dependency: facter
   provider: facter.x86_64 1.6.6-1.el6op
openshift-origin-cartridge-jenkins-1.9.8-1.el6op.noarch
openshift-origin-cartridge-cron-1.7.6-1.1.el6op.noarch
openshift-origin-cartridge-jbosseap-2.3.11.1-1.el6op.noarch
  dependency: facter
   provider: facter.x86_64 1.6.6-1.el6op
openshift-origin-cartridge-jbossews-0.4.9-1.el6op.noarch
  dependency: facter
   provider: facter.x86_64 1.6.6-1.el6op
openshift-origin-cartridge-haproxy-0.4.11-1.el6op.noarch
openshift-origin-cartridge-jenkins-client-1.8.6-1.1.el6op.noarch
openshift-origin-cartridge-ruby-0.4.10.3-1.el6op.noarch
  dependency: facter
   provider: facter.x86_64 1.6.6-1.el6op
openshift-origin-cartridge-mysql-0.3.7-1.el6op.noarch
openshift-origin-cartridge-python-0.4.8.1-1.el6op.noarch
  dependency: facter
   provider: facter.x86_64 1.6.6-1.el6op

Comment 10 errata-xmlrpc 2013-09-05 13:23:42 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/RHBA-2013-1211.html