Note: This bug is displayed in read-only format because the product is no longer active in Red Hat Bugzilla.

Bug 1111163

Summary: Function check_nodes_cartridges in oo-accept-systems script file doesn't work as expected.
Product: OpenShift Container Platform Reporter: Yanping Zhang <yanpzhan>
Component: NodeAssignee: Miciah Dashiel Butler Masters <mmasters>
Status: CLOSED ERRATA QA Contact: libra bugs <libra-bugs>
Severity: medium Docs Contact:
Priority: high    
Version: 2.2.0CC: adellape, bleanhar, jokerman, libra-onpremise-devel, mmccomas
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: openshift-origin-broker-util-1.23.8.7-1.el6op Doc Type: Bug Fix
Doc Text:
When the oo-accept-systems script attempted to get the list of cartridges, the test terminated silently because it was using a deprecated fact. This bug fix updates the logic to use the correct method of getting the list of cartridges, and the test now completes as intended.
Story Points: ---
Clone Of:
: 1118908 (view as bug list) Environment:
Last Closed: 2014-08-04 13:27:29 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: 1118908    
Bug Blocks:    

Description Yanping Zhang 2014-06-19 11:48:23 UTC
Description of problem:
In check_nodes_cartridges function, it is calling "cart_list" facter, but this facter does not exist in ose-2.1 now, so that means, this check do nothing. This check need to be rewritten

Version-Release number of selected component (if applicable):
2.1.z/2014-06-18.2

How reproducible:
Always

Steps to Reproduce:
1.
2.
3.

Actual results:


Expected results:


Additional info:

Comment 1 Luke Meyer 2014-06-19 13:18:36 UTC
Agreed, this check should use mcollective to compare the actual manifest lists from each node (probably no need to compare to the broker anymore since the broker has its own concept of cartridges; maybe just ensure that all the cartridges the broker has imported are actually present on all the nodes).

This check has long been the only thing looking at cart_list, but I didn't realize that fact was actually missing in 2.1.

Comment 2 Miciah Dashiel Butler Masters 2014-07-22 20:22:51 UTC
PR: https://github.com/openshift/enterprise-server/pull/336

Comment 3 Miciah Dashiel Butler Masters 2014-07-28 20:04:45 UTC
An Online-specific issue is blocking testing of the fix in Online devenvs, but QE should be able to proceed with testing the fix on Enterprise.

Comment 4 Brenton Leanhardt 2014-07-28 20:49:45 UTC
Attaching this BZ to the release.

Comment 7 Yanping Zhang 2014-07-29 00:30:40 UTC
Verified on http://etherpad.corp.redhat.com/puddle-2-1-2014-07-28.
Steps to verify:
[root@broker ~]# oo-accept-systems check_nodes_cartridges -v
INFO: checking that each public_hostname resolves to external IP
INFO: PUBLIC_HOSTNAME node2.ose21z-manual.com.cn for node2.ose21z-manual.com.cn resolves to 10.3.9.230
INFO: PUBLIC_HOSTNAME node1.ose21z-manual.com.cn for node1.ose21z-manual.com.cn resolves to 10.3.9.229
INFO: checking that each public_hostname is unique
INFO: checking that public_ip has been set for all nodes
INFO: PUBLIC_IP 10.3.9.230 for node2.ose21z-manual.com.cn
INFO: PUBLIC_IP 10.3.9.229 for node1.ose21z-manual.com.cn
INFO: checking that public_ip is unique for all nodes
INFO: checking that all node hosts have cartridges installed
INFO: cartridges for node2.ose21z-manual.com.cn: ["php-5.4", "php-5.3", "diy-0.1", "haproxy-1.4", "jenkins-client-1", "jbosseap-6", "mongodb-2.4", "jbossews-2.0", "jbossews-1.0", "mysql-5.5", "mysql-5.1", "postgresql-9.2", "postgresql-8.4", "perl-5.10", "jenkins-1", "nodejs-0.10", "ruby-1.9", "ruby-1.8", "cron-1.4", "python-3.3", "python-2.7", "python-2.6"]
INFO: cartridges for node1.ose21z-manual.com.cn: ["php-5.4", "php-5.3", "diy-0.1", "haproxy-1.4", "jenkins-client-1", "jbosseap-6", "mongodb-2.4", "jbossews-2.0", "jbossews-1.0", "mysql-5.5", "mysql-5.1", "postgresql-9.2", "postgresql-8.4", "perl-5.10", "jenkins-1", "nodejs-0.10", "ruby-1.9", "ruby-1.8", "cron-1.4", "python-3.3", "python-2.7", "python-2.6"]
INFO: checking that same cartridges are installed on all node hosts
INFO: checking that broker's list of cartridges is not stale
INFO: API reports carts: cron-1.4|diy-0.1|haproxy-1.4|jbosseap-6|jbossews-2.0|jbossews-1.0|jenkins-1|jenkins-client-1|mongodb-2.4|mysql-5.5|mysql-5.1|nodejs-0.10|perl-5.10|php-5.4|php-5.3|postgresql-9.2|postgresql-8.4|python-3.3|python-2.7|python-2.6|ruby-1.9|ruby-1.8
PASS

Act as expected,so move it to verified.

Comment 9 errata-xmlrpc 2014-08-04 13:27:29 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-2014-0999.html