Bug 2014071 - Payload imagestream new tags not properly updated during cluster upgrade
Summary: Payload imagestream new tags not properly updated during cluster upgrade
Alias: None
Product: OpenShift Container Platform
Classification: Red Hat
Component: Cluster Version Operator
Version: 4.9
Hardware: Unspecified
OS: Unspecified
Target Milestone: ---
: 4.10.0
Assignee: Jack Ottofaro
QA Contact: XiuJuan Wang
Depends On:
Blocks: 2015024
TreeView+ depends on / blocked
Reported: 2021-10-14 12:27 UTC by Kevin Pouget
Modified: 2022-03-10 16:19 UTC (History)
4 users (show)

Fixed In Version:
Doc Type: No Doc Update
Doc Text:
Clone Of:
Last Closed: 2022-03-10 16:19:35 UTC
Target Upstream Version:

Attachments (Terms of Use)
driver-toolkit tag broken after cluster upgrade (2.34 KB, text/plain)
2021-10-14 12:27 UTC, Kevin Pouget
no flags Details

System ID Private Priority Status Summary Last Updated
Github openshift cluster-version-operator pull 674 0 None open Bug 2014071: lib/resourcemerge/imagestream.go: Copy all data for new tag reference 2021-10-15 19:30:55 UTC
Github openshift cluster-version-operator pull 677 0 None open Bug 2014071: lib/resourcemerge/imagestream.go: remove TagReference field dependency 2021-10-19 12:49:39 UTC
Red Hat Product Errata RHSA-2022:0056 0 None None None 2022-03-10 16:19:54 UTC

Description Kevin Pouget 2021-10-14 12:27:22 UTC
Created attachment 1832928 [details]
driver-toolkit tag broken after cluster upgrade

Description of problem:

When the CVO updates an imagestream which contains *new* tags, the new tags are created without a name.

How reproducible: 100%

Steps to Reproduce:

look at the tags of the driver-toolkit imagestream after a cluster upgrade (upgrade must include an update of RHCOS version):

> oc get is/driver-toolkit -n openshift  -oyaml

Actual results:

the imagesteam tag is populated with the right `from` image, but the `name` field is empty

Expected results:

the imagestream tag must be populated with their name, according to the specification of the new imagestream

Additional info:

in this block: https://github.com/openshift/cluster-version-operator/blob/14d93a158e163f06c2ee936ee29c9c94da7f35fe/lib/resourcemerge/imagestream.go#L22-L27

the value of `required.Name` is lost and not set in `existing.Name`

Comment 3 XiuJuan Wang 2021-10-19 10:03:44 UTC
Reproduce it when upgrade 4.9 to 4.10.0-0.nightly-2021-10-16-173656

Installed a 4.9.0-0.nightly-2021-10-16-173626 cluster,
$oc get is driver-toolkit  -n openshift -o=jsonpath={.spec.tags[*].name}
49.84.202110142155-0 latest

Upgrade cluster from 4.9 to 4.10.0-0.ci-2021-10-19-025144
$oc get is driver-toolkit  -n openshift -o=jsonpath={.spec.tags[*].name}
410.84.202110151740-0 49.84.202110142155-0 latest

Details http://pastebin.test.redhat.com/1002288

Comment 4 Jack Ottofaro 2021-10-19 12:45:00 UTC
Moving this back to Assigned in order to change the fix to remove dependency on TagReference struct fields.

Comment 6 XiuJuan Wang 2021-10-20 07:06:14 UTC
Verified it again upgrade 4.9.0 to 4.10.0-0.ci-2021-10-20-044038

Comment 10 errata-xmlrpc 2022-03-10 16:19:35 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.10.3 security 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.


Note You need to log in before you can comment on or make changes to this bug.