Bug 2169361

Summary: Mismatch of golang version in downstream virtctl builds
Product: Container Native Virtualization (CNV) Reporter: Felix Matouschek <fmatouschek>
Component: InfrastructureAssignee: Felix Matouschek <fmatouschek>
Status: VERIFIED --- QA Contact: Geetika Kapoor <gkapoor>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 4.14.0CC: dholler, gkapoor, rkishner, ycui
Target Milestone: ---   
Target Release: 4.14.0   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 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 Felix Matouschek 2023-02-13 12:41:41 UTC
Description of problem:

Upstream sources of virtctl expect the golang 1.19 featureset to be available but downstream builds of virtctl still use older versions of golang (RHEL8/9 -> golang 1.18, RHEL7 -> golang 1.17). This breaks builds when using language features not available in older golang versions. (see [1] for an example)

As a start my suggestion is to drop virtctl support for RHEL7, because the OpenShift CLI client already dropped RHEL7 support in version 4.11. (see [2])

Further we should try to better keep golang versions between upstream and downstream builds in sync.

[1]: https://github.com/kubevirt/kubevirt/pull/9086
[2]: https://access.redhat.com/articles/6968945 

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

How reproducible:
Always

Steps to Reproduce:
1. Try to build virtctl with golang version 1.17 or older
2.
3.

Actual results:
The build fails because latest virtctl sources use language features not available in golang 1.17 / RHEL 7 builds.

Expected results:
The build succeeds because the required golang featureset is available.

or

No builds with old golang versions of sources requiring later golang versions.

Additional info:

Comment 1 Felix Matouschek 2023-06-29 08:47:00 UTC
Builds of virtctl for RHEL7 and RHEL9 are dropped in CNV 4.14. This leaves us with RHEL8 builds, which currently do not have this issue.