Uploaded image for project: 'OpenShift Bugs'
  1. OpenShift Bugs
  2. OCPBUGS-65879

Removed image-overrides annotation doesn't reflect to hcp

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Unresolved
    • Icon: Normal Normal
    • None
    • 4.19.z, 4.20.z, 4.21.0
    • HyperShift
    • None
    • False
    • Hide

      None

      Show
      None
    • None
    • Moderate
    • None
    • None
    • None
    • None
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      Description of problem:

      Could update the image-overrides annotation to another image, but not reflect after removed the annotation in 4.21.
      Couldn't update or remove the annotation in 4.19 hcp, the operation will be ignored
          

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

      4.21.0-0.nightly-2025-11-20-233928
          

      How reproducible:

      always
          

      Steps to Reproduce:
      1.Create hcp with hypershift.openshift.io/image-overrides: cluster-version-operator annotation

      $oc get hc -A -o yaml  | grep override
            hypershift.openshift.io/image-overrides: cluster-version-operator=quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:375787ef71d48bb1babe7a669e0dc1732ecced830d51b0d17fd15d10feb67f48
      $ oc get pods control-plane-operator-7d8bf9757c-rffwc -o yaml | grep override -A 2
          - --registry-overrides==
          - --image-overrides
          - cluster-version-operator=quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:375787ef71d48bb1babe7a669e0dc1732ecced830d51b0d17fd15d10feb67f48
      $oc get pods -l app=cluster-version-operator -o jsonpath='{.items[0].spec.containers[0].image}'
      quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:375787ef71d48bb1babe7a669e0dc1732ecced830d51b0d17fd15d10feb67f48%   
       

      2. Update the annotation to another image

      $oc adm release info quay.io/openshift-release-dev/ocp-release:4.21.0-ec.0-x86_64   -o=json | jq -r '.references.spec.tags[] | select(.name=="cluster-version-operator") | .from.name'
      quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:b694023143beb0fed27a9ac97b519134190e21337f5e06518ac5ad44586d9f63
      $oc annotate hostedcluster xiuwang-aks-hc-21-oidc -n clusters \
        hypershift.openshift.io/image-overrides=cluster-version-operator=quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:b694023143beb0fed27a9ac97b519134190e21337f5e06518ac5ad44586d9f63 \
        --overwrite
      hostedcluster.hypershift.openshift.io/xiuwang-aks-hc-21-oidc annotated
       

      3. Check the image update

      oc get hc -A -o yaml  | grep override
            hypershift.openshift.io/image-overrides: cluster-version-operator=quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:b694023143beb0fed27a9ac97b519134190e21337f5e06518ac5ad44586d9f63
            hypershift.openshift.io/pod-security-admission-label-override: baseline
      oc get pods -l app=control-plane-operator
      NAME                                      READY   STATUS    RESTARTS   AGE
      control-plane-operator-69db6f69c4-6ktnx   1/1     Running   0          52s
      $oc get pods control-plane-operator-69db6f69c4-6ktnx  -o yaml  | grep -i override -A 2
          - --registry-overrides==
          - --image-overrides
          - cluster-version-operator=quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:b694023143beb0fed27a9ac97b519134190e21337f5e06518ac5ad44586d9f63
      $oc get pods -l app=cluster-version-operator -o jsonpath='{.items[0].spec.containers[0].image}'
      quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:b694023143beb0fed27a9ac97b519134190e21337f5e06518ac5ad44586d9f63
       

      4. Remove the annotation from hc

      $oc annotate hostedcluster xiuwang-aks-hc-21-oidc -n clusters \
        hypershift.openshift.io/image-overrides-
      hostedcluster.hypershift.openshift.io/xiuwang-aks-hc-21-oidc annotated
      $ oc get hc -A -o yaml  | grep override
            hypershift.openshift.io/pod-security-admission-label-override: baseline
      $ oc get pods -l app=control-plane-operator -w
      NAME                                      READY   STATUS    RESTARTS   AGE
      control-plane-operator-69db6f69c4-6ktnx   1/1     Running   0          11m
      ^C%                                                                                                                                                  $oc get pods -l app=cluster-version-operator -o jsonpath='{.items[0].spec.containers[0].image}'
      quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:b694023143beb0fed27a9ac97b519134190e21337f5e06518ac5ad44586d9f63% 
       

      Actual results:

      The annotation updating could take effect, but removing the annotation will be ignored
          

      Expected results:

      Could update and remove annotation
          

      Additional info:

      
          

              Unassigned Unassigned
              rh-ee-xiuwang XiuJuan Wang
              None
              None
              XiuJuan Wang XiuJuan Wang
              None
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

                Created:
                Updated: