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

bundledeployment hangs for unpackpending when bundle image does not exits

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Won't Do
    • Icon: Normal Normal
    • None
    • 4.15
    • OLM
    • Quality / Stability / Reliability
    • False
    • Hide

      None

      Show
      None
    • None
    • None
    • No
    • None
    • None
    • Rejected
    • None
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      Description of problem:

      We have TP feature in 4.15 for OLMv1.
      when we create bundledeployment with wrong bundle image (for example, it does not exist), the bundledeployment hangs for UnpackPending with type=HasValidBundle and status=true.
      
      

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

      [root@preserve-olm-env2 unknown]# oc get clusterversion
      NAME      VERSION                              AVAILABLE   PROGRESSING   SINCE   STATUS
      version   4.15.0-0.nightly-2023-11-08-062604   True        False         110m    Cluster version is 4.15.0-0.nightly-2023-11-08-062604

      How reproducible:

      always

      Steps to Reproduce:

      [root@preserve-olm-env2 unknown]# oc patch featuregate cluster -p '{"spec": {"featureSet": "TechPreviewNoUpgrade"}}' --type=merge
      [root@preserve-olm-env2 unknown]# cat notfound_plain.yaml 
      apiVersion: core.rukpak.io/v1alpha1
      kind: BundleDeployment
      metadata:
        name: open
      spec:
        provisionerClassName: core-rukpak-io-plain
        template:
          metadata:
            labels:
              app: open
          spec:
            provisionerClassName: core-rukpak-io-plain
            source:
              image:
                ref: quay.io/olmqe/olmv1bundle:plain-pod-caseid-notfound
              type: image
      [root@preserve-olm-env2 unknown]# oc apply -f notfound_plain.yaml 
      bundledeployment.core.rukpak.io/open created
      [root@preserve-olm-env2 unknown]# oc get bd open
      NAME   ACTIVE BUNDLE   INSTALL STATE   AGE
      open                                   35m
      [root@preserve-olm-env2 unknown]# oc get bd open -o yaml
      apiVersion: core.rukpak.io/v1alpha1
      kind: BundleDeployment
      metadata:
        annotations:
          kubectl.kubernetes.io/last-applied-configuration: |
            {"apiVersion":"core.rukpak.io/v1alpha1","kind":"BundleDeployment","metadata":{"annotations":{},"name":"open"},"spec":{"provisionerClassName":"core-rukpak-io-plain","template":{"metadata":{"labels":{"app":"open"}},"spec":{"provisionerClassName":"core-rukpak-io-plain","source":{"image":{"ref":"quay.io/olmqe/olmv1bundle:plain-pod-caseid-notfound"},"type":"image"}}}}}
        creationTimestamp: "2023-11-10T02:31:18Z"
        generation: 1
        name: open
        resourceVersion: "83975"
        uid: 641e2322-eb1d-45f4-b0c3-04f28c7ed69f
      spec:
        provisionerClassName: core-rukpak-io-plain
        template:
          metadata:
            labels:
              app: open
          spec:
            provisionerClassName: core-rukpak-io-plain
            source:
              image:
                ref: quay.io/olmqe/olmv1bundle:plain-pod-caseid-notfound
              type: image
      status:
        conditions:
        - lastTransitionTime: "2023-11-10T02:31:18Z"
          message: Waiting for the open-d74984 Bundle to be unpacked
          reason: UnpackPending
          status: "True"
          type: HasValidBundle
        observedGeneration: 1
      [root@preserve-olm-env2 unknown]# oc get bundle open-d74984 -o yaml
      apiVersion: core.rukpak.io/v1alpha1
      kind: Bundle
      metadata:
        creationTimestamp: "2023-11-10T02:31:18Z"
        finalizers:
        - core.rukpak.io/delete-cached-bundle
        generation: 1
        labels:
          app: open
          core.rukpak.io/bundle-template-hash: d74984
          core.rukpak.io/owner-kind: BundleDeployment
          core.rukpak.io/owner-name: open
        name: open-d74984
        ownerReferences:
        - apiVersion: core.rukpak.io/v1alpha1
          blockOwnerDeletion: true
          controller: true
          kind: BundleDeployment
          name: open
          uid: 641e2322-eb1d-45f4-b0c3-04f28c7ed69f
        resourceVersion: "101414"
        uid: 9a863866-8fda-436c-ad98-9b67d0a23340
      spec:
        provisionerClassName: core-rukpak-io-plain
        source:
          image:
            ref: quay.io/olmqe/olmv1bundle:plain-pod-caseid-notfound
          type: image
      status:
        conditions:
        - lastTransitionTime: "2023-11-10T02:31:18Z"
          message: Back-off pulling image "quay.io/olmqe/olmv1bundle:plain-pod-caseid-notfound"
          reason: UnpackPending
          status: "False"
          type: Unpacked
        observedGeneration: 1
        phase: Pending
      [root@preserve-olm-env2 unknown]# oc get pod -n openshift-rukpak open-d74984 -o yaml
      apiVersion: v1
      kind: Pod
      metadata:
        annotations:
          k8s.v1.cni.cncf.io/network-status: |-
            [{
                "name": "openshift-sdn",
                "interface": "eth0",
                "ips": [
                    "10.128.2.15"
                ],
                "default": true,
                "dns": {}
            }]
          openshift.io/scc: restricted-v2
          seccomp.security.alpha.kubernetes.io/pod: runtime/default
        creationTimestamp: "2023-11-10T02:31:18Z"
        labels:
          core.rukpak.io/owner-kind: Bundle
          core.rukpak.io/owner-name: open-d74984
        name: open-d74984
        namespace: openshift-rukpak
        ownerReferences:
        - apiVersion: core.rukpak.io/v1alpha1
          blockOwnerDeletion: true
          controller: true
          kind: Bundle
          name: open-d74984
          uid: 9a863866-8fda-436c-ad98-9b67d0a23340
        resourceVersion: "101413"
        uid: 02ecada6-1d5f-47fd-bbc1-a6187c760c5d
      spec:
        automountServiceAccountToken: false
        containers:
        - command:
          - /bin/unpack
          - --bundle-dir
          - /
          image: quay.io/olmqe/olmv1bundle:plain-pod-caseid-notfound
          imagePullPolicy: IfNotPresent
          name: bundle
          resources: {}
          securityContext:
            allowPrivilegeEscalation: false
            capabilities:
              drop:
              - ALL
            runAsUser: 1000720000
          terminationMessagePath: /dev/termination-log
          terminationMessagePolicy: File
          volumeMounts:
          - mountPath: /bin
            name: util
        dnsPolicy: ClusterFirst
        enableServiceLinks: true
        imagePullSecrets:
        - name: default-dockercfg-9bfh6
        initContainers:
        - command:
          - cp
          - -Rv
          - /unpack
          - /util/bin/unpack
          image: quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:9ff5c788179a0fa243a92d7e6cc073fac08dd478d6397a722fad978ff4ca1917
          imagePullPolicy: IfNotPresent
          name: install-unpacker
          resources: {}
          securityContext:
            allowPrivilegeEscalation: false
            capabilities:
              drop:
              - ALL
            runAsUser: 1000720000
          terminationMessagePath: /dev/termination-log
          terminationMessagePolicy: File
          volumeMounts:
          - mountPath: /util/bin
            name: util
        nodeName: ip-10-0-75-130.us-east-2.compute.internal
        preemptionPolicy: PreemptLowerPriority
        priority: 0
        restartPolicy: Never
        schedulerName: default-scheduler
        securityContext:
          fsGroup: 1000720000
          runAsNonRoot: false
          seLinuxOptions:
            level: s0:c27,c9
          seccompProfile:
            type: RuntimeDefault
        serviceAccount: default
        serviceAccountName: default
        terminationGracePeriodSeconds: 30
        tolerations:
        - effect: NoExecute
          key: node.kubernetes.io/not-ready
          operator: Exists
          tolerationSeconds: 300
        - effect: NoExecute
          key: node.kubernetes.io/unreachable
          operator: Exists
          tolerationSeconds: 300
        volumes:
        - emptyDir: {}
          name: util
      status:
        conditions:
        - lastProbeTime: null
          lastTransitionTime: "2023-11-10T02:31:26Z"
          status: "True"
          type: Initialized
        - lastProbeTime: null
          lastTransitionTime: "2023-11-10T02:31:18Z"
          message: 'containers with unready status: [bundle]'
          reason: ContainersNotReady
          status: "False"
          type: Ready
        - lastProbeTime: null
          lastTransitionTime: "2023-11-10T02:31:18Z"
          message: 'containers with unready status: [bundle]'
          reason: ContainersNotReady
          status: "False"
          type: ContainersReady
        - lastProbeTime: null
          lastTransitionTime: "2023-11-10T02:31:18Z"
          status: "True"
          type: PodScheduled
        containerStatuses:
        - image: quay.io/olmqe/olmv1bundle:plain-pod-caseid-notfound
          imageID: ""
          lastState: {}
          name: bundle
          ready: false
          restartCount: 0
          started: false
          state:
            waiting:
              message: Back-off pulling image "quay.io/olmqe/olmv1bundle:plain-pod-caseid-notfound"
              reason: ImagePullBackOff
        hostIP: 10.0.75.130
        initContainerStatuses:
        - containerID: cri-o://056be7f355f66bbb0e0105875c2d445c78114d7eac5965c871b603f75ff50cc2
          image: quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:9ff5c788179a0fa243a92d7e6cc073fac08dd478d6397a722fad978ff4ca1917
          imageID: 802dff5c1c8d26965381fe6f90a13579cf8b8d3c8cdc5b395d14b30204856a9f
          lastState: {}
          name: install-unpacker
          ready: true
          restartCount: 0
          started: false
          state:
            terminated:
              containerID: cri-o://056be7f355f66bbb0e0105875c2d445c78114d7eac5965c871b603f75ff50cc2
              exitCode: 0
              finishedAt: "2023-11-10T02:31:26Z"
              reason: Completed
              startedAt: "2023-11-10T02:31:26Z"
        phase: Pending
        podIP: 10.128.2.15
        podIPs:
        - ip: 10.128.2.15
        qosClass: BestEffort
        startTime: "2023-11-10T02:31:18Z"
      [root@preserve-olm-env2 unknown]#  

      Actual results:

      bundledeployment hangs for unpackpending

      Expected results:

      bundledployment fails with status error.

      Additional info:

       

              agreene1991 Alexander Greene (Inactive)
              rhn-support-kuiwang Kui Wang
              None
              None
              Kui Wang Kui Wang
              None
              Votes:
              0 Vote for this issue
              Watchers:
              6 Start watching this issue

                Created:
                Updated:
                Resolved: