Description of problem: The file `/etc/openshift-enterprise-release` does not update with the actual releases. The release notes specify that we are currently on release 2.0-5, however a fully updated OSE 2.0 system has the following: # cat /etc/openshift-enterprise-release OpenShift Enterprise 2.0.1 # rpm -qa | grep openshift-origin-broker openshift-origin-broker-util-1.17.6.4-1.el6op.noarch openshift-origin-broker-1.15.3.5-1.el6op.noarch # rpm -qa | grep openshift-enterprise-release openshift-enterprise-release-2.0.1-1.el6op.noarch Version-Release number of selected component (if applicable): - How reproducible: Always Steps to Reproduce: 1. Update an OSE 2.0 system 2. $ cat /etc/openshift-enterprise-release 3. Actual results: OpenShift Enterprise 2.0.1 Expected results: OpenShift Enterprise 2.0.5 Additional info: Release notes - https://access.redhat.com/site/documentation/en-US/OpenShift_Enterprise/2/html-single/2.0_Release_Notes/index.html I am unsure if this should be a doc bug, or a broker bug. Assigning to broker.
It is admittedly confusing. As it functions now, the file is created with the version of the openshift-enterprise-release RPM. That RPM doesn't generally get updated for x.y.z releases (since its main purpose is to pull in install/upgrade dependencies). It is only sure to be updated for x.y releases. It will for instance be updated for the 2.1 release. We could document that it works like this. Or we could make a policy to bump the version for each point release, to the extent that we track point releases (there are occasional asynchronous errata too); keeping in mind that just because this RPM got updated is no guarantee that other packages got updated, so it's an unreliable indicator of version. Customer and stakeholder input would be welcome here.
I agree that this is confusing. After performing a new install, I assumed that I did not have access to the appropriate repositories or that my install was broken. A documentation change or code update would have helped with troubleshooting the version number. Could a solution be to add an 'oo-version' command to check for the most recent packages and generate the version number that way?
*** Bug 1140890 has been marked as a duplicate of this bug. ***
Going to be hard to detect until the first 2.2.z release, but this should be fixed. ose-upgrade no longer messes with this file, it's just overwritten by the RPM when it's installed.
The reason why /etc/openshift-enterprise-release is not update after "yum update" is that: # cat /etc/openshift-enterprise-release OpenShift Enterprise 2.1.6 # rpm -qf /etc/openshift-enterprise-release openshift-enterprise-release-2.1.7-1.el6op.noarch # rpm -q --scripts openshift-enterprise-release-2.1.7-1.el6op.noarch postinstall scriptlet (using /bin/sh): # If the version file doesn't exist, this is a new installation, so create it. # Otherwise, leave as-is for the upgrade to handle. vfile=/etc/openshift-enterprise-release if [ ! -f $vfile ]; then # create the initial version file echo "OpenShift Enterprise 2.1.7" > $vfile chmod 644 $vfile fi # same for the upgrade state file. if [ ! -f /etc/openshift/upgrade/state.yaml ]; then ose-upgrade --complete 3 >& /dev/null fi That means once /etc/openshift-enterprise-release is created upon first installation of openshift-enterprise-release, yum update will not overwrite it. Just as what was said in comment 2 - "its main purpose is to pull in install/upgrade dependencies". Verify this bug with openshift-enterprise-release-2.2.0-1.git.61.3ac24b1.el6op.noarch # yum update openshift-enterprise-* # rpm -q --scripts openshift-enterprise-release postinstall scriptlet (using /bin/sh): # same for the upgrade state file. if [ ! -f /etc/openshift/upgrade/state.yaml ]; then ose-upgrade --complete 4 >& /dev/null fi The installation of openshift-enterprise-release will never touch /etc/openshift-enterprise-release, this fill will be overwritten. # cat /etc/openshift-enterprise-release OpenShift Enterprise 2.2.0 Start to ose-upgrade. # ose-upgrade begin <--snip--> INFO: --END /usr/lib/ruby/site_ruby/1.8/ose-upgrade/host/upgrades/4/repo/03-configure-yum-priorities OUTPUT-- INFO: /usr/lib/ruby/site_ruby/1.8/ose-upgrade/host/upgrades/4/repo/03-configure-yum-priorities ran without error. INFO: Setting host step 'begin' status to COMPLETE INFO: To continue the upgrade, install a specific upgrade package. WARN: determine_upgrade_status You appear to have an OpenShift Enterprise node installed; please install the node upgrade package to proceed with this upgrade. # yum install openshift-enterprise-upgrade-node # cat /etc/openshift-enterprise-release OpenShift Enterprise 2.2.0 Compare with a little older package - openshift-enterprise-release-2.2.0-1.git.47.84857df.el6op.noarch <--snip--> INFO: --END /usr/lib/ruby/site_ruby/1.8/ose-upgrade/host/upgrades/4/repo/03-configure-yum-priorities OUTPUT-- INFO: /usr/lib/ruby/site_ruby/1.8/ose-upgrade/host/upgrades/4/repo/03-configure-yum-priorities ran without error. INFO: updating /etc/openshift-enterprise-release INFO: Setting host step 'begin' status to COMPLETE INFO: To continue the upgrade, install a specific upgrade package. WARN: determine_upgrade_status You appear to have an OpenShift Enterprise broker installed; please install the broker upgrade package to proceed with this upgrade. # yum install openshift-enterprise-upgrade-broker # cat /etc/openshift-enterprise-release OpenShift Enterprise 2.2 Obviously in the latest openshift-enterprise-release package, ose-upgrade no longer messes with this file. Due to there is no puddle, my verification have to stop here, not sure the result when the whole ose-upgrade process is finished. Waiting new puddle.
Verified this bug with openshift-enterprise-release-2.2.0-1.git.61.3ac24b1.el6op.noarch, and PASS. Install latest ose-2.1.z env, in which openshift-enterprise-release-2.1.7-1.git.24.1520603.el6op.noarch will be installed. Run "ose-upgrade begin" <--snip--> INFO: --END /usr/lib/ruby/site_ruby/1.8/ose-upgrade/host/upgrades/4/repo/03-configure-yum-priorities OUTPUT-- INFO: /usr/lib/ruby/site_ruby/1.8/ose-upgrade/host/upgrades/4/repo/03-configure-yum-priorities ran without error. INFO: updating /etc/openshift-enterprise-release INFO: Setting host step 'begin' status to COMPLETE <--snip--> Seen from the above output, though openshift-enterprise-release-2.1.7-1.git.24.1520603.el6op.noarch still mess with /etc/openshift-enterprise-release, the following step would be "yum install openshift-enterprise-upgrade-broker", when running this step, "openshift-enterprise-release-2.2.0-1.git.61.3ac24b1.el6op.noarch" would replace old ose-2.1 openshift-enterprise-release, the new package would overwrite /etc/openshift-enterprise-release. After install openshift-enterprise-upgrade-broker # cat /etc/openshift-enterprise-release OpenShift Enterprise 2.2.0 # rpm -qf /etc/openshift-enterprise-release openshift-enterprise-release-2.2.0-1.git.61.3ac24b1.el6op.noarch # rpm -qV openshift-enterprise-release-2.2.0-1.git.61.3ac24b1.el6op.noarch # rpm -q --scripts openshift-enterprise-release postinstall scriptlet (using /bin/sh): # create upgrade state file if needed. if [ ! -f /etc/openshift/upgrade/state.yaml ]; then ose-upgrade --complete 4 >& /dev/null fi So move this bug to verified.
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://rhn.redhat.com/errata/RHSA-2014-1796.html