Bug 1943224 - cannot upgrade openshift-kube-descheduler from 4.7.2 to latest
Summary: cannot upgrade openshift-kube-descheduler from 4.7.2 to latest
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: OpenShift Container Platform
Classification: Red Hat
Component: kube-scheduler
Version: 4.7
Hardware: Unspecified
OS: Unspecified
high
medium
Target Milestone: ---
: 4.8.0
Assignee: Mike Dame
QA Contact: RamaKasturi
URL:
Whiteboard:
Depends On:
Blocks: 1953707
TreeView+ depends on / blocked
 
Reported: 2021-03-25 15:36 UTC by RamaKasturi
Modified: 2021-07-27 22:56 UTC (History)
3 users (show)

Fixed In Version:
Doc Type: No Doc Update
Doc Text:
Clone Of:
Environment:
Last Closed: 2021-07-27 22:55:47 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Github openshift cluster-kube-descheduler-operator pull 177 0 None open Bug 1943224: Fix CSV olmSkipRange pattern for development 2021-03-26 18:26:18 UTC
Github openshift cluster-kube-descheduler-operator pull 184 0 None open Bug 1943224: Update olmSkipRange in 4.7 and 4.8 to remove dev pattern 2021-04-12 20:52:18 UTC
Github openshift cluster-kube-descheduler-operator pull 190 0 None open bug 1943224: Have olm.skipRange in csv correspond to search pattern in art.yaml 2021-04-27 12:56:43 UTC
Red Hat Product Errata RHSA-2021:2438 0 None None None 2021-07-27 22:56:22 UTC

Description RamaKasturi 2021-03-25 15:36:34 UTC
Description of problem:
I tried to upgrade openshift-kube-descheduler from 4.7.2 to latest but i fail to upgrade and upon further investigation it looks like descheduler operator skiprange needs to be updated.
current skipRange is '>=4.3.0-0 < 4.7.0-0 where as it should be >=4.3.0 < 4.7.0

For more info, we could refer to logging one: https://github.com/openshift/cluster-logging-operator/blob/release-4.5/manifests/4.5/cluster-logging.v4.5.0.clusterserviceversion.yaml

Also discussion related to this: https://coreos.slack.com/archives/CH76YSYSC/p1616568447464200

Version-Release number of selected component (if applicable):
[knarra@knarra ~]$ oc get csv -n openshift-kube-descheduler-operator
NAME                                                   DISPLAY                     VERSION                 REPLACES   PHASE
clusterkubedescheduleroperator.4.7.0-202101300133.p0   Kube Descheduler Operator   4.7.0-202101300133.p0              Succeeded


How reproducible:
Always

Steps to Reproduce:
1. Install 4.7.2 cluster
2. Deploy descheduler operator
3. Edit the catalogSource index image and set that to latest 

Actual results:
Could see that operator does not get upgraded to latest version of 4.7.z

Expected results:
Operator should get updated to latest version of 4.7.z

Additional info:

Comment 1 Mike Dame 2021-03-26 18:29:41 UTC
I opened a PR against master at https://github.com/openshift/cluster-kube-descheduler-operator/pull/177. Let me know if this needs to be backported to the 4.7 branch

I'm also lowering the severity, because from the linked slack discussion it sounds like this only applies to development upgrades, and the ART tooling automatically replaces this pattern for releases. Correct me if I misunderstood that

Comment 3 RamaKasturi 2021-04-12 12:54:01 UTC
Hi Mike,

   Moving the bug back to assigned state as all other operators have the skiprange as below. So i think descheduler as well should be inline with them.

https://github.com/kube-reporting/metering-operator/blob/master/manifests/deploy/o[…]m/bundle/4.8/meteringoperator.v4.8.0.clusterserviceversion.yaml
https://github.com/openshift/cluster-nfd-operator/blob/master/manifests/olm-catalog/4.8/nfd.v4.8.0.clusterserviceversion.yaml#L40
https://github.com/openshift/ocs-operator/blob/master/deploy/bundle/manifests/ocs-operator.clusterserviceversion.yaml#L994
https://github.com/openshift/compliance-operator/blob/master/deploy/olm-catalog/co[…]erator/manifests/compliance-operator.clusterserviceversion.yaml

If you look at the above operators yaml i see the skipRange to be olm.skipRange: ">=4.5.0 <4.8.0" and not ">4.5.0-0 <4.8.0" Could you please help take a look again ? Thanks !!

Comment 4 Mike Dame 2021-04-12 15:54:22 UTC
@Rama, that is the change that was merged in https://github.com/openshift/cluster-kube-descheduler-operator/pull/177/files, our skipRange is now defined as ">=4.3.0-0 < 4.7.0" which matches those. Please double check, as that should be merged into the 4.7 and 4.8 descheduler operator manifests now.

Comment 5 RamaKasturi 2021-04-12 16:45:43 UTC
@mike should not it be ">=4.3.0 < 4.7.0" ? When i looked at other operator manifests that is how they are. Could you please help clarify if this should be fine ?

Comment 6 Mike Dame 2021-04-12 20:51:55 UTC
Ah, I see what you mean (I missed the hyphen in the lower version number).

Opened https://github.com/openshift/cluster-kube-descheduler-operator/pull/184 to fix that too

Comment 8 RamaKasturi 2021-04-26 17:19:25 UTC
Verified the bug with the build below and i see that i could successfully upgrade from 4.7 to latest 4.8 , the skipversion looks to be correct as per the PR.

[knarra@knarra ~]$ oc get csv -n openshift-kube-descheduler-operator
NAME                                                   DISPLAY                            VERSION                 REPLACES                                               PHASE
clusterkubedescheduleroperator.4.8.0-202104231341.p0   Kube Descheduler Operator          4.8.0-202104231341.p0   clusterkubedescheduleroperator.4.7.0-202104090228.p0   Succeeded

[knarra@knarra ~]$ oc get csv clusterkubedescheduleroperator.4.8.0-202104231341.p0 -n openshift-kube-descheduler-operator -o yaml| grep skip
    olm.skipRange: '>=4.6.0 < 4.8.0'
          f:olm.skipRange: {}

will clone a bug for 4.7.z

Comment 9 RamaKasturi 2021-04-27 12:46:10 UTC
I could successfully upgrade from 4.7 to 4.8 but the skipRange still does not correspond to art.yaml's search pattern, so moving it back to assigned.

Comment 11 RamaKasturi 2021-05-04 11:50:22 UTC
Verified with the build below and i could successfully upgrade from 4.7 to 4.8 and now i see that the skipRange correspond to art.yaml's search pattern.

[knarra@knarra new_way]$ oc get csv
NAME                                                   DISPLAY                     VERSION                 REPLACES                                               PHASE
clusterkubedescheduleroperator.4.8.0-202104292205.p0   Kube Descheduler Operator   4.8.0-202104292205.p0   clusterkubedescheduleroperator.4.7.0-202102110027.p0   Succeeded

[knarra@knarra new_way]$ oc get clusterversion
NAME      VERSION                             AVAILABLE   PROGRESSING   SINCE   STATUS
version   4.8.0-0.nightly-2021-04-30-201824   True        False         89m     Cluster version is 4.8.0-0.nightly-2021-04-30-201824

[knarra@knarra new_way]$ oc get csv -o json | grep skip
                    "olm.skipRange": "\u003e=4.6.0 \u003c4.8.0-202104292205.p0",
                                    "f:olm.skipRange": {},

Based on the above moving bug to verified state.

Comment 14 errata-xmlrpc 2021-07-27 22:55:47 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.8.2 bug fix and 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.

https://access.redhat.com/errata/RHSA-2021:2438


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