Bug 1891555

Summary: The windows oc.exe binary does not have version metadata
Product: OpenShift Container Platform Reporter: Kent Perrier <kperrier>
Component: ocAssignee: Maciej Szulik <maszulik>
Status: CLOSED ERRATA QA Contact: zhou ying <yinzhou>
Severity: medium Docs Contact:
Priority: medium    
Version: 4.4CC: aos-bugs, jdelft, jokerman, maszulik, mfojtik, rpalathi, yselkowi
Target Milestone: ---   
Target Release: 4.7.0   
Hardware: x86_64   
OS: Windows   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Cause: Metadata providing version information were not produced during build process. Consequence: No version information was present on windows binaries. Fix: Generate proper windows version information to be consumed during build process by the go compiler. Result: Version information is available on windows binaries.
Story Points: ---
Clone Of: Environment:
Last Closed: 2021-02-24 15:28:28 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: 1891892    
Attachments:
Description Flags
screenshot of the lack of version info on the oc.exe windows binary
none
Screenshot of fixed 4.7 nightly
none
fixed for 4.7 client none

Description Kent Perrier 2020-10-26 15:44:22 UTC
Created attachment 1724192 [details]
screenshot of the lack of version info on the oc.exe windows binary

Description of problem:
The oc.exe tool for windows does not have version meta-data imbeded in it. This makes automated deployment/management of it very difficult in an enterprise setting.

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

4.4.23

How reproducible:

Every time

Steps to Reproduce:
1. Download windows tools
2. install
3. right click on oc.exe, look in the details tab

Actual results:

file and product version information is blank (see attached screenshot)

Expected results:

file and product version to be populated with data that can be used to Windows software deployment tooling.

Additional info:

Comment 1 Yaakov Selkowitz 2020-10-26 16:20:17 UTC
That's what goversioninfo is supposed to be for.  It seems the build infrastructure in origin used to handle that, specifically:

https://github.com/openshift/origin/blob/master/hack/lib/constants.sh#L198-L259
https://github.com/openshift/origin/blob/master/hack/lib/build/binaries.sh#L218-L221
https://github.com/openshift/origin/blob/master/hack/lib/build/binaries.sh#L238-L240

This appears not have been moved over to the separate oc repo when it was split out.

Comment 4 Yaakov Selkowitz 2020-11-03 01:23:43 UTC
Created attachment 1726079 [details]
Screenshot of fixed 4.7 nightly

Just in case QE doesn't have a Windows machine handy, I went to the latest 4.7-nightly, clicked Download the Installer, which takes you to:

https://openshift-release-artifacts.svc.ci.openshift.org/4.7.0-0.nightly-2020-11-03-002310/

Then downloaded and extracted the windows .zip file, and displayed Properties of the included oc.exe.  Screenshot attached.

Comment 15 zhou ying 2020-11-10 03:21:24 UTC
the issue has fixed:

$ ./oc.exe version 
Client Version: 4.7.0-0.nightly-2020-11-09-190845

will attach the picture for windows client version .

Comment 16 zhou ying 2020-11-10 03:22:38 UTC
Created attachment 1727955 [details]
fixed for 4.7 client

Comment 21 errata-xmlrpc 2021-02-24 15:28:28 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 (Moderate: OpenShift Container Platform 4.7.0 security, bug fix, and enhancement update), 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-2020:5633