---
apiVersion: operators.coreos.com/v1alpha1
kind: ClusterServiceVersion
metadata:
  annotations:
    alm-examples: |-
      [
        {
          "apiVersion": "local.storage.openshift.io/v1",
          "kind": "LocalVolume",
          "metadata": {
            "name": "example"
          },
          "spec": {
            "nodeSelector": {
              "nodeSelectorTerms": [
                {
                  "matchExpressions": [
                    {
                      "key": "kubernetes.io/hostname",
                      "operator": "In",
                      "values": [
                        "worker-0",
                        "worker-1"
                      ]
                    }
                  ]
                }
              ]
            },
            "storageClassDevices": [
              {
                "devicePaths": [
                  "/dev/disk/by-id/ata-crucial"
                ],
                "fsType": "ext4",
                "storageClassName": "foobar",
                "volumeMode": "Filesystem"
              }
            ]
          }
        },
        {
          "apiVersion": "local.storage.openshift.io/v1alpha1",
          "kind": "LocalVolumeSet",
          "metadata": {
            "name": "example-localvolumeset"
          },
          "spec": {
            "deviceInclusionSpec": {
              "deviceMechanicalProperties": [
                "Rotational",
                "NonRotational"
              ],
              "deviceTypes": [
                "disk"
              ],
              "maxSize": "100G",
              "minSize": "10G"
            },
            "maxDeviceCount": 10,
            "nodeSelector": {
              "nodeSelectorTerms": [
                {
                  "matchExpressions": [
                    {
                      "key": "kubernetes.io/hostname",
                      "operator": "In",
                      "values": [
                        "worker-0",
                        "worker-1"
                      ]
                    }
                  ]
                }
              ]
            },
            "storageClassName": "example-storageclass",
            "volumeMode": "Block"
          }
        },
        {
          "apiVersion": "local.storage.openshift.io/v1alpha1",
          "kind": "LocalVolumeDiscovery",
          "metadata": {
            "name": "auto-discover-devices"
          },
          "spec": {
            "nodeSelector": {
              "nodeSelectorTerms": [
                {
                  "matchExpressions": [
                    {
                      "key": "kubernetes.io/hostname",
                      "operator": "In",
                      "values": [
                        "worker-0",
                        "worker-1"
                      ]
                    }
                  ]
                }
              ]
            }
          }
        }
      ]
    capabilities: Full Lifecycle
    categories: Storage
    containerImage: registry.redhat.io/openshift4/ose-local-storage-rhel9-operator@sha256:707f95973f56268c36a5f67f22942e2b41bc48cdf8cff47eb7062e9a53579951
    createdAt: "2019-08-14T00:00:00Z"
    description: Configure and use local storage volumes.
    features.operators.openshift.io/csi: "false"
    features.operators.openshift.io/disconnected: "true"
    features.operators.openshift.io/fips-compliant: "true"
    features.operators.openshift.io/proxy-aware: "true"
    features.operators.openshift.io/tls-profiles: "false"
    features.operators.openshift.io/token-auth-aws: "false"
    features.operators.openshift.io/token-auth-azure: "false"
    features.operators.openshift.io/token-auth-gcp: "false"
    olm.operatorGroup: local-operator-group
    olm.operatorNamespace: openshift-local-storage
    olm.properties: '[{"type": "olm.maxOpenShiftVersion", "value": "4.20"}]'
    olm.skipRange: '>=4.3.0 <4.19.0-202510142112'
    olm.targetNamespaces: openshift-local-storage
    operatorframework.io/cluster-monitoring: "true"
    operatorframework.io/properties: '{"properties":[{"type":"olm.gvk","value":{"group":"local.storage.openshift.io","kind":"LocalVolume","version":"v1"}},{"type":"olm.gvk","value":{"group":"local.storage.openshift.io","kind":"LocalVolumeDiscovery","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"local.storage.openshift.io","kind":"LocalVolumeDiscoveryResult","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"local.storage.openshift.io","kind":"LocalVolumeSet","version":"v1alpha1"}},{"type":"olm.maxOpenShiftVersion","value":"4.20"},{"type":"olm.package","value":{"packageName":"local-storage-operator","version":"4.19.0-202510142112"}}]}'
    operatorframework.io/suggested-namespace: openshift-local-storage
    operators.openshift.io/infrastructure-features: '["disconnected"]'
    operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine", "OpenShift
      Container Platform", "OpenShift Platform Plus"]'
    operators.operatorframework.io/internal-objects: '["localvolumediscoveryresults.local.storage.openshift.io"]'
    repository: https://github.com/openshift/local-storage-operator
    support: Red Hat
    target.workload.openshift.io/management: '{"effect": "PreferredDuringScheduling"}'
  creationTimestamp: "2025-10-27T12:41:06Z"
  finalizers:
  - operators.coreos.com/csv-cleanup
  generation: 1
  labels:
    olm.managed: "true"
    operator-metering: "true"
    operatorframework.io/arch.amd64: supported
    operatorframework.io/arch.arm64: supported
    operatorframework.io/arch.ppc64le: supported
    operatorframework.io/arch.s390x: supported
    operators.coreos.com/local-storage-operator.openshift-local-storage: ""
  managedFields:
  - apiVersion: operators.coreos.com/v1alpha1
    fieldsType: FieldsV1
    fieldsV1:
      f:metadata:
        f:annotations:
          .: {}
          f:alm-examples: {}
          f:capabilities: {}
          f:categories: {}
          f:containerImage: {}
          f:createdAt: {}
          f:description: {}
          f:features.operators.openshift.io/csi: {}
          f:features.operators.openshift.io/disconnected: {}
          f:features.operators.openshift.io/fips-compliant: {}
          f:features.operators.openshift.io/proxy-aware: {}
          f:features.operators.openshift.io/tls-profiles: {}
          f:features.operators.openshift.io/token-auth-aws: {}
          f:features.operators.openshift.io/token-auth-azure: {}
          f:features.operators.openshift.io/token-auth-gcp: {}
          f:olm.properties: {}
          f:olm.skipRange: {}
          f:operatorframework.io/cluster-monitoring: {}
          f:operatorframework.io/properties: {}
          f:operatorframework.io/suggested-namespace: {}
          f:operators.openshift.io/infrastructure-features: {}
          f:operators.openshift.io/valid-subscription: {}
          f:operators.operatorframework.io/internal-objects: {}
          f:repository: {}
          f:support: {}
          f:target.workload.openshift.io/management: {}
        f:labels:
          .: {}
          f:olm.managed: {}
          f:operator-metering: {}
          f:operatorframework.io/arch.amd64: {}
          f:operatorframework.io/arch.arm64: {}
          f:operatorframework.io/arch.ppc64le: {}
          f:operatorframework.io/arch.s390x: {}
      f:spec:
        .: {}
        f:apiservicedefinitions: {}
        f:cleanup:
          .: {}
          f:enabled: {}
        f:customresourcedefinitions:
          .: {}
          f:owned: {}
        f:description: {}
        f:displayName: {}
        f:icon: {}
        f:install:
          .: {}
          f:spec:
            .: {}
            f:clusterPermissions: {}
            f:deployments: {}
            f:permissions: {}
          f:strategy: {}
        f:installModes: {}
        f:keywords: {}
        f:labels:
          .: {}
          f:alm-owner-metering: {}
          f:alm-status-descriptors: {}
        f:links: {}
        f:maintainers: {}
        f:maturity: {}
        f:minKubeVersion: {}
        f:provider:
          .: {}
          f:name: {}
        f:relatedImages: {}
        f:selector: {}
        f:version: {}
    manager: catalog
    operation: Update
    time: "2025-10-27T12:41:06Z"
  - apiVersion: operators.coreos.com/v1alpha1
    fieldsType: FieldsV1
    fieldsV1:
      f:metadata:
        f:annotations:
          f:olm.operatorGroup: {}
          f:olm.operatorNamespace: {}
          f:olm.targetNamespaces: {}
        f:finalizers:
          .: {}
          v:"operators.coreos.com/csv-cleanup": {}
        f:labels:
          f:operators.coreos.com/local-storage-operator.openshift-local-storage: {}
    manager: olm
    operation: Update
    time: "2025-10-27T12:41:13Z"
  - apiVersion: operators.coreos.com/v1alpha1
    fieldsType: FieldsV1
    fieldsV1:
      f:status:
        .: {}
        f:cleanup: {}
        f:conditions: {}
        f:lastTransitionTime: {}
        f:lastUpdateTime: {}
        f:message: {}
        f:phase: {}
        f:reason: {}
        f:requirementStatus: {}
    manager: olm
    operation: Update
    subresource: status
    time: "2025-10-27T12:41:30Z"
  name: local-storage-operator.v4.19.0-202510142112
  namespace: openshift-local-storage
  resourceVersion: "52959"
  uid: 627d4975-b383-4f9b-9d4b-3c74dad3e3b8
spec:
  apiservicedefinitions: {}
  cleanup:
    enabled: false
  customresourcedefinitions:
    owned:
    - description: Manage local storage volumes for OpenShift
      displayName: Local Volume
      kind: LocalVolume
      name: localvolumes.local.storage.openshift.io
      specDescriptors:
      - description: User requested management state of this object
        displayName: Requested management state
        path: managementState
      - description: Log level of local volume diskmaker and provisioner for this
          object
        displayName: LogLevel
        path: logLevel
      - description: Selected nodes for local storage
        displayName: NodeSelector
        path: nodeSelector
        x-descriptors:
        - urn:alm:descriptor:com.tectonic.ui:selector
      - description: StorageClass devices configured by this object
        displayName: StorageClassDevices
        path: storageClassDevices
      statusDescriptors:
      - description: Last generation of this object
        displayName: ObservedGeneration
        path: observedGeneration
      - description: Current management state of this object
        displayName: Operator management state
        path: managementState
      - description: Last known condition of this object
        displayName: Conditions
        path: conditions
        x-descriptors:
        - urn:alm:descriptor:io.kubernetes.conditions
      version: v1
    - description: A Local Volume set allows you to filter a set of storage volumes,
        group them and create a dedicated storage class to consume storage from the
        set of volumes.
      displayName: Local Volume Set
      kind: LocalVolumeSet
      name: localvolumesets.local.storage.openshift.io
      specDescriptors:
      - description: Selected nodes for local storage
        displayName: NodeSelector
        path: nodeSelector
        x-descriptors:
        - urn:alm:descriptor:com.tectonic.ui:selector
      - description: StorageClassName to use for set of matched devices
        displayName: StorageClassName
        path: storageClassName
      - description: VolumeMode determines whether the PV created is Block or Filesystem.
          By default it will be block
        displayName: VolumeMode
        path: volumeMode
      - description: FSType type to create when volumeMode is Filesystem
        displayName: FSType
        path: fsType
      - description: List of tolerations to pass to the discovery daemons
        displayName: Tolerations
        path: tolerations
        x-descriptors:
        - urn:alm:descriptor:io.kubernetes:Tolerations
      - description: Filters for including a device in the device discovery
        displayName: deviceInclusionSpec
        path: deviceInclusionSpec
      statusDescriptors:
      - description: Last generation of this object
        displayName: ObservedGeneration
        path: observedGeneration
      - description: Total devices over which the PVs has been provisioned
        displayName: TotalProvisionedDeviceCount
        path: totalProvisionedDeviceCount
      - description: Last known condition of this object
        displayName: Conditions
        path: conditions
        x-descriptors:
        - urn:alm:descriptor:io.kubernetes.conditions
      version: v1alpha1
    - description: Discover list of potentially usable disks on the chosen set of
        nodes
      displayName: Local Volume Discovery
      kind: LocalVolumeDiscovery
      name: localvolumediscoveries.local.storage.openshift.io
      specDescriptors:
      - description: Selected nodes for discovery
        displayName: NodeSelector
        path: nodeSelector
        x-descriptors:
        - urn:alm:descriptor:com.tectonic.ui:selector
      - description: List of tolerations to pass to the discovery daemons
        displayName: Tolerations
        path: tolerations
        x-descriptors:
        - urn:alm:descriptor:io.kubernetes:Tolerations
      statusDescriptors:
      - description: Current phase of the discovery
        displayName: Phase
        path: phase
      - description: Last generation of this object
        displayName: ObservedGeneration
        path: observedGeneration
      - description: Last known condition of this object
        displayName: Conditions
        path: conditions
        x-descriptors:
        - urn:alm:descriptor:io.kubernetes.conditions
      version: v1alpha1
    - description: Disc inventory of available disks from selected nodes
      displayName: Local Volume Discovery Result
      kind: LocalVolumeDiscoveryResult
      name: localvolumediscoveryresults.local.storage.openshift.io
      specDescriptors:
      - description: Node on which the devices are discovered
        displayName: NodeName
        path: nodeName
      statusDescriptors:
      - description: DiscoveredTimeStamp is the last timestamp when the list of discovered
          devices was updated
        displayName: DiscoveredTimeStamp
        path: discoveredTimeStamp
      - description: DiscoveredDevices contains the list of devices discovered on
          the node
        displayName: DiscoveredDevices
        path: discoveredDevices
      version: v1alpha1
  description: |
    Operator that configures local storage volumes for use in Kubernetes and OpenShift. OpenShift 4.2 and above are the only supported OpenShift versions.
  displayName: Local Storage
  icon:
  - base64data: PHN2ZyBpZD0iTGF5ZXJfMSIgZGF0YS1uYW1lPSJMYXllciAxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxOTIgMTQ1Ij48ZGVmcz48c3R5bGU+LmNscy0xe2ZpbGw6I2UwMDt9PC9zdHlsZT48L2RlZnM+PHRpdGxlPlJlZEhhdC1Mb2dvLUhhdC1Db2xvcjwvdGl0bGU+PHBhdGggZD0iTTE1Ny43Nyw2Mi42MWExNCwxNCwwLDAsMSwuMzEsMy40MmMwLDE0Ljg4LTE4LjEsMTcuNDYtMzAuNjEsMTcuNDZDNzguODMsODMuNDksNDIuNTMsNTMuMjYsNDIuNTMsNDRhNi40Myw2LjQzLDAsMCwxLC4yMi0xLjk0bC0zLjY2LDkuMDZhMTguNDUsMTguNDUsMCwwLDAtMS41MSw3LjMzYzAsMTguMTEsNDEsNDUuNDgsODcuNzQsNDUuNDgsMjAuNjksMCwzNi40My03Ljc2LDM2LjQzLTIxLjc3LDAtMS4wOCwwLTEuOTQtMS43My0xMC4xM1oiLz48cGF0aCBjbGFzcz0iY2xzLTEiIGQ9Ik0xMjcuNDcsODMuNDljMTIuNTEsMCwzMC42MS0yLjU4LDMwLjYxLTE3LjQ2YTE0LDE0LDAsMCwwLS4zMS0zLjQybC03LjQ1LTMyLjM2Yy0xLjcyLTcuMTItMy4yMy0xMC4zNS0xNS43My0xNi42QzEyNC44OSw4LjY5LDEwMy43Ni41LDk3LjUxLjUsOTEuNjkuNSw5MCw4LDgzLjA2LDhjLTYuNjgsMC0xMS42NC01LjYtMTcuODktNS42LTYsMC05LjkxLDQuMDktMTIuOTMsMTIuNSwwLDAtOC40MSwyMy43Mi05LjQ5LDI3LjE2QTYuNDMsNi40MywwLDAsMCw0Mi41Myw0NGMwLDkuMjIsMzYuMywzOS40NSw4NC45NCwzOS40NU0xNjAsNzIuMDdjMS43Myw4LjE5LDEuNzMsOS4wNSwxLjczLDEwLjEzLDAsMTQtMTUuNzQsMjEuNzctMzYuNDMsMjEuNzdDNzguNTQsMTA0LDM3LjU4LDc2LjYsMzcuNTgsNTguNDlhMTguNDUsMTguNDUsMCwwLDEsMS41MS03LjMzQzIyLjI3LDUyLC41LDU1LC41LDc0LjIyYzAsMzEuNDgsNzQuNTksNzAuMjgsMTMzLjY1LDcwLjI4LDQ1LjI4LDAsNTYuNy0yMC40OCw1Ni43LTM2LjY1LDAtMTIuNzItMTEtMjcuMTYtMzAuODMtMzUuNzgiLz48L3N2Zz4=
    mediatype: image/svg+xml
  install:
    spec:
      clusterPermissions:
      - rules:
        - apiGroups:
          - storage.k8s.io
          resources:
          - storageclasses
          verbs:
          - get
          - list
          - watch
          - create
          - update
          - patch
          - delete
        - apiGroups:
          - ""
          resources:
          - persistentvolumeclaims
          - events
          verbs:
          - get
          - list
          - watch
          - create
          - update
          - patch
          - delete
        - apiGroups:
          - events.k8s.io
          resources:
          - events
          verbs:
          - get
          - list
          - watch
          - create
          - update
          - patch
          - delete
        - apiGroups:
          - ""
          resources:
          - nodes
          verbs:
          - get
          - list
          - watch
        - apiGroups:
          - ""
          resources:
          - persistentvolumes
          verbs:
          - get
          - list
          - watch
          - create
          - delete
          - update
        - apiGroups:
          - config.openshift.io
          resources:
          - infrastructures
          verbs:
          - get
          - list
          - watch
        serviceAccountName: local-storage-operator
      - rules:
        - apiGroups:
          - security.openshift.io
          resourceNames:
          - privileged
          resources:
          - securitycontextconstraints
          verbs:
          - use
        - apiGroups:
          - ""
          resources:
          - nodes
          verbs:
          - list
          - get
          - watch
        - apiGroups:
          - ""
          - storage.k8s.io
          resources:
          - configmaps
          - storageclasses
          - persistentvolumeclaims
          - persistentvolumes
          verbs:
          - '*'
        - apiGroups:
          - ""
          - events.k8s.io
          resources:
          - events
          verbs:
          - get
          - list
          - watch
          - create
          - patch
          - update
        - apiGroups:
          - authentication.k8s.io
          resources:
          - tokenreviews
          verbs:
          - create
        serviceAccountName: local-storage-admin
      deployments:
      - name: local-storage-operator
        spec:
          replicas: 1
          selector:
            matchLabels:
              name: local-storage-operator
          strategy: {}
          template:
            metadata:
              annotations:
                target.workload.openshift.io/management: '{"effect": "PreferredDuringScheduling"}'
              creationTimestamp: null
              labels:
                name: local-storage-operator
            spec:
              containers:
              - args:
                - --leader-elect
                command:
                - local-storage-operator
                env:
                - name: WATCH_NAMESPACE
                  valueFrom:
                    fieldRef:
                      fieldPath: metadata.namespace
                - name: DISKMAKER_IMAGE
                  value: registry.redhat.io/openshift4/ose-local-storage-diskmaker-rhel9@sha256:8f32dffd2425749ebb690ddffd78f1af085ade048dff1c9d6f88e380fa44cce0
                - name: KUBE_RBAC_PROXY_IMAGE
                  value: registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:b46c84d4e6e7297123ff18b8c8ebb7bb05ca0ac2de87a7bcc1bd5b9b68e7b119
                - name: PRIORITY_CLASS_NAME
                  value: openshift-user-critical
                - name: MUSTGATHER_IMAGE
                  value: registry.redhat.io/openshift4/ose-local-storage-mustgather-rhel9@sha256:811f23aac66bc71fa6712ec59417de921e41f71a02a3a10a9dea97a287327386
                image: registry.redhat.io/openshift4/ose-local-storage-rhel9-operator@sha256:707f95973f56268c36a5f67f22942e2b41bc48cdf8cff47eb7062e9a53579951
                imagePullPolicy: IfNotPresent
                name: local-storage-operator
                ports:
                - containerPort: 60000
                  name: metrics
                  protocol: TCP
                resources:
                  requests:
                    cpu: 10m
                    memory: 50Mi
                securityContext:
                  allowPrivilegeEscalation: false
                  capabilities:
                    drop:
                    - ALL
                  readOnlyRootFilesystem: true
                terminationMessagePolicy: FallbackToLogsOnError
              priorityClassName: openshift-user-critical
              securityContext:
                runAsNonRoot: true
                seccompProfile:
                  type: RuntimeDefault
              serviceAccountName: local-storage-operator
      permissions:
      - rules:
        - apiGroups:
          - ""
          - coordination.k8s.io
          resources:
          - configmaps
          - leases
          verbs:
          - get
          - list
          - watch
          - create
          - update
          - patch
          - delete
        - apiGroups:
          - ""
          resources:
          - events
          verbs:
          - create
          - patch
        - apiGroups:
          - local.storage.openshift.io
          resources:
          - localvolumes
          - localvolumes/status
          - localvolumesets
          - localvolumesets/status
          - localvolumediscoveries
          - localvolumediscoveries/status
          - localvolumediscoveryresults
          - localvolumediscoveryresults/status
          verbs:
          - get
          - list
          - watch
          - create
          - update
          - patch
          - delete
        - apiGroups:
          - ""
          resources:
          - pods
          - services
          - services/finalizers
          - endpoints
          - persistentvolumeclaims
          - events
          - configmaps
          - secrets
          verbs:
          - get
          - list
          - watch
          - create
          - update
          - patch
          - delete
        - apiGroups:
          - apps
          resources:
          - deployments
          - daemonsets
          - replicasets
          - statefulsets
          verbs:
          - get
          - list
          - watch
          - create
          - update
          - patch
          - delete
        - apiGroups:
          - events.k8s.io
          resources:
          - events
          verbs:
          - get
          - list
          - watch
          - create
          - update
          - patch
          - delete
        - apiGroups:
          - monitoring.coreos.com
          resources:
          - servicemonitors
          - prometheusrules
          verbs:
          - get
          - list
          - watch
          - create
          - update
          - patch
          - delete
        - apiGroups:
          - apps
          resourceNames:
          - local-storage-operator
          resources:
          - deployments/finalizers
          verbs:
          - update
        serviceAccountName: local-storage-operator
      - rules:
        - apiGroups:
          - local.storage.openshift.io
          resources:
          - localvolumes
          - localvolumes/status
          - localvolumesets
          - localvolumesets/status
          - localvolumediscoveries
          - localvolumediscoveries/status
          - localvolumediscoveryresults
          - localvolumediscoveryresults/status
          verbs:
          - get
          - list
          - watch
          - create
          - update
        serviceAccountName: local-storage-admin
    strategy: deployment
  installModes:
  - supported: true
    type: OwnNamespace
  - supported: true
    type: SingleNamespace
  - supported: false
    type: MultiNamespace
  - supported: false
    type: AllNamespaces
  keywords:
  - storage
  - local storage
  labels:
    alm-owner-metering: local-storage-operator
    alm-status-descriptors: local-storage-operator.v4.19.0-202510142112
  links:
  - name: Documentation
    url: https://github.com/openshift/local-storage-operator/tree/main/docs
  - name: Source Repository
    url: https://github.com/openshift/local-storage-operator
  maintainers:
  - email: aos-storage-staff@redhat.com
    name: Red Hat
  maturity: stable
  minKubeVersion: 1.14.0
  provider:
    name: Red Hat
  relatedImages:
  - image: registry.redhat.io/openshift4/ose-local-storage-rhel9-operator@sha256:707f95973f56268c36a5f67f22942e2b41bc48cdf8cff47eb7062e9a53579951
    name: ose-local-storage-rhel9-operator
  - image: registry.redhat.io/openshift4/ose-local-storage-diskmaker-rhel9@sha256:8f32dffd2425749ebb690ddffd78f1af085ade048dff1c9d6f88e380fa44cce0
    name: ose-local-storage-diskmaker-rhel9
  - image: registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:b46c84d4e6e7297123ff18b8c8ebb7bb05ca0ac2de87a7bcc1bd5b9b68e7b119
    name: ose-kube-rbac-proxy-rhel9
  - image: registry.redhat.io/openshift4/ose-local-storage-mustgather-rhel9@sha256:811f23aac66bc71fa6712ec59417de921e41f71a02a3a10a9dea97a287327386
    name: ose-local-storage-mustgather-rhel9
  selector:
    matchLabels:
      alm-owner-metering: local-storage-operator
  version: 4.19.0-202510142112
status:
  cleanup: {}
  conditions:
  - lastTransitionTime: "2025-10-27T12:41:08Z"
    lastUpdateTime: "2025-10-27T12:41:08Z"
    message: requirements not yet checked
    phase: Pending
    reason: RequirementsUnknown
  - lastTransitionTime: "2025-10-27T12:41:08Z"
    lastUpdateTime: "2025-10-27T12:41:08Z"
    message: one or more requirements couldn't be found
    phase: Pending
    reason: RequirementsNotMet
  - lastTransitionTime: "2025-10-27T12:41:11Z"
    lastUpdateTime: "2025-10-27T12:41:11Z"
    message: all requirements found, attempting install
    phase: InstallReady
    reason: AllRequirementsMet
  - lastTransitionTime: "2025-10-27T12:41:12Z"
    lastUpdateTime: "2025-10-27T12:41:12Z"
    message: waiting for install components to report healthy
    phase: Installing
    reason: InstallSucceeded
  - lastTransitionTime: "2025-10-27T12:41:12Z"
    lastUpdateTime: "2025-10-27T12:41:13Z"
    message: 'installing: waiting for deployment local-storage-operator to become
      ready: deployment "local-storage-operator" not available: Deployment does not
      have minimum availability.'
    phase: Installing
    reason: InstallWaiting
  - lastTransitionTime: "2025-10-27T12:41:30Z"
    lastUpdateTime: "2025-10-27T12:41:30Z"
    message: install strategy completed with no errors
    phase: Succeeded
    reason: InstallSucceeded
  lastTransitionTime: "2025-10-27T12:41:30Z"
  lastUpdateTime: "2025-10-27T12:41:30Z"
  message: install strategy completed with no errors
  phase: Succeeded
  reason: InstallSucceeded
  requirementStatus:
  - group: operators.coreos.com
    kind: ClusterServiceVersion
    message: CSV minKubeVersion (1.14.0) less than server version (v1.32.9)
    name: local-storage-operator.v4.19.0-202510142112
    status: Present
    version: v1alpha1
  - group: apiextensions.k8s.io
    kind: CustomResourceDefinition
    message: CRD is present and Established condition is true
    name: localvolumediscoveries.local.storage.openshift.io
    status: Present
    uuid: 5ca4e153-855a-4b43-a0c5-c12b67908044
    version: v1
  - group: apiextensions.k8s.io
    kind: CustomResourceDefinition
    message: CRD is present and Established condition is true
    name: localvolumediscoveryresults.local.storage.openshift.io
    status: Present
    uuid: dd27fbcb-cd71-4aeb-af19-eac1e07ae020
    version: v1
  - group: apiextensions.k8s.io
    kind: CustomResourceDefinition
    message: CRD is present and Established condition is true
    name: localvolumes.local.storage.openshift.io
    status: Present
    uuid: be9fa9c1-4e88-4aef-9160-7eb9273da62a
    version: v1
  - group: apiextensions.k8s.io
    kind: CustomResourceDefinition
    message: CRD is present and Established condition is true
    name: localvolumesets.local.storage.openshift.io
    status: Present
    uuid: c2cc9991-d21a-4971-a605-35836e012026
    version: v1
  - dependents:
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["get","list","watch","create","update","patch","delete"],"apiGroups":["storage.k8s.io"],"resources":["storageclasses"]}
      status: Satisfied
      version: v1
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["get","list","watch","create","update","patch","delete"],"apiGroups":[""],"resources":["persistentvolumeclaims","events"]}
      status: Satisfied
      version: v1
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["get","list","watch","create","update","patch","delete"],"apiGroups":["events.k8s.io"],"resources":["events"]}
      status: Satisfied
      version: v1
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["get","list","watch"],"apiGroups":[""],"resources":["nodes"]}
      status: Satisfied
      version: v1
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["get","list","watch","create","delete","update"],"apiGroups":[""],"resources":["persistentvolumes"]}
      status: Satisfied
      version: v1
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["get","list","watch"],"apiGroups":["config.openshift.io"],"resources":["infrastructures"]}
      status: Satisfied
      version: v1
    group: ""
    kind: ServiceAccount
    message: ""
    name: local-storage-operator
    status: Present
    version: v1
  - dependents:
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["use"],"apiGroups":["security.openshift.io"],"resources":["securitycontextconstraints"],"resourceNames":["privileged"]}
      status: Satisfied
      version: v1
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["list","get","watch"],"apiGroups":[""],"resources":["nodes"]}
      status: Satisfied
      version: v1
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["*"],"apiGroups":["","storage.k8s.io"],"resources":["configmaps","storageclasses","persistentvolumeclaims","persistentvolumes"]}
      status: Satisfied
      version: v1
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["get","list","watch","create","patch","update"],"apiGroups":["","events.k8s.io"],"resources":["events"]}
      status: Satisfied
      version: v1
    - group: rbac.authorization.k8s.io
      kind: PolicyRule
      message: cluster rule:{"verbs":["create"],"apiGroups":["authentication.k8s.io"],"resources":["tokenreviews"]}
      status: Satisfied
      version: v1
    group: ""
    kind: ServiceAccount
    message: ""
    name: local-storage-admin
    status: Present
    version: v1
