---
apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
  annotations:
    controller-gen.kubebuilder.io/version: v0.16.1
    operatorframework.io/installed-alongside-3e9fb0af4f21687: openshift-storage/rook-ceph-operator.v4.19.6-rhodf
  creationTimestamp: "2025-10-27T12:44:11Z"
  generation: 1
  labels:
    olm.managed: "true"
    operators.coreos.com/rook-ceph-operator.openshift-storage: ""
  managedFields:
  - apiVersion: apiextensions.k8s.io/v1
    fieldsType: FieldsV1
    fieldsV1:
      f:metadata:
        f:annotations:
          .: {}
          f:controller-gen.kubebuilder.io/version: {}
          f:operatorframework.io/installed-alongside-3e9fb0af4f21687: {}
        f:labels:
          .: {}
          f:olm.managed: {}
      f:spec:
        f:conversion:
          .: {}
          f:strategy: {}
        f:group: {}
        f:names:
          f:kind: {}
          f:listKind: {}
          f:plural: {}
          f:singular: {}
        f:scope: {}
        f:versions: {}
    manager: catalog
    operation: Update
    time: "2025-10-27T12:44:11Z"
  - apiVersion: apiextensions.k8s.io/v1
    fieldsType: FieldsV1
    fieldsV1:
      f:status:
        f:acceptedNames:
          f:kind: {}
          f:listKind: {}
          f:plural: {}
          f:singular: {}
        f:conditions:
          k:{"type":"Established"}:
            .: {}
            f:lastTransitionTime: {}
            f:message: {}
            f:reason: {}
            f:status: {}
            f:type: {}
          k:{"type":"NamesAccepted"}:
            .: {}
            f:lastTransitionTime: {}
            f:message: {}
            f:reason: {}
            f:status: {}
            f:type: {}
    manager: kube-apiserver
    operation: Update
    subresource: status
    time: "2025-10-27T12:44:11Z"
  - apiVersion: apiextensions.k8s.io/v1
    fieldsType: FieldsV1
    fieldsV1:
      f:metadata:
        f:labels:
          f:operators.coreos.com/rook-ceph-operator.openshift-storage: {}
    manager: olm
    operation: Update
    time: "2025-10-27T12:47:28Z"
  name: cephblockpoolradosnamespaces.ceph.rook.io
  resourceVersion: "63363"
  uid: 8e42d4bf-061e-41a3-ad59-62212740892b
spec:
  conversion:
    strategy: None
  group: ceph.rook.io
  names:
    kind: CephBlockPoolRadosNamespace
    listKind: CephBlockPoolRadosNamespaceList
    plural: cephblockpoolradosnamespaces
    singular: cephblockpoolradosnamespace
  scope: Namespaced
  versions:
  - additionalPrinterColumns:
    - jsonPath: .status.phase
      name: Phase
      type: string
    - description: Name of the Ceph BlockPool
      jsonPath: .spec.blockPoolName
      name: BlockPool
      type: string
    - jsonPath: .metadata.creationTimestamp
      name: Age
      type: date
    name: v1
    schema:
      openAPIV3Schema:
        properties:
          apiVersion:
            type: string
          kind:
            type: string
          metadata:
            type: object
          spec:
            properties:
              blockPoolName:
                type: string
                x-kubernetes-validations:
                - message: blockPoolName is immutable
                  rule: self == oldSelf
              mirroring:
                properties:
                  mode:
                    enum:
                    - ""
                    - pool
                    - image
                    type: string
                  remoteNamespace:
                    type: string
                  snapshotSchedules:
                    items:
                      properties:
                        interval:
                          type: string
                        path:
                          type: string
                        startTime:
                          type: string
                      type: object
                    type: array
                required:
                - mode
                type: object
              name:
                type: string
                x-kubernetes-validations:
                - message: name is immutable
                  rule: self == oldSelf
            required:
            - blockPoolName
            type: object
          status:
            properties:
              conditions:
                items:
                  properties:
                    lastHeartbeatTime:
                      format: date-time
                      type: string
                    lastTransitionTime:
                      format: date-time
                      type: string
                    message:
                      type: string
                    reason:
                      type: string
                    status:
                      type: string
                    type:
                      type: string
                  type: object
                type: array
              info:
                additionalProperties:
                  type: string
                nullable: true
                type: object
              mirroringInfo:
                properties:
                  details:
                    type: string
                  lastChanged:
                    type: string
                  lastChecked:
                    type: string
                  mode:
                    type: string
                  peers:
                    items:
                      properties:
                        client_name:
                          type: string
                        direction:
                          type: string
                        mirror_uuid:
                          type: string
                        site_name:
                          type: string
                        uuid:
                          type: string
                      type: object
                    type: array
                  site_name:
                    type: string
                type: object
              mirroringStatus:
                properties:
                  details:
                    type: string
                  lastChanged:
                    type: string
                  lastChecked:
                    type: string
                  summary:
                    properties:
                      daemon_health:
                        type: string
                      group_health:
                        nullable: true
                        type: string
                      group_states:
                        nullable: true
                        properties:
                          error:
                            type: integer
                          replaying:
                            type: integer
                          starting_replay:
                            type: integer
                          stopped:
                            type: integer
                          stopping_replay:
                            type: integer
                          syncing:
                            type: integer
                          unknown:
                            type: integer
                        type: object
                      health:
                        type: string
                      image_health:
                        type: string
                      image_states:
                        nullable: true
                        properties:
                          error:
                            type: integer
                          replaying:
                            type: integer
                          starting_replay:
                            type: integer
                          stopped:
                            type: integer
                          stopping_replay:
                            type: integer
                          syncing:
                            type: integer
                          unknown:
                            type: integer
                        type: object
                      states:
                        nullable: true
                        properties:
                          error:
                            type: integer
                          replaying:
                            type: integer
                          starting_replay:
                            type: integer
                          stopped:
                            type: integer
                          stopping_replay:
                            type: integer
                          syncing:
                            type: integer
                          unknown:
                            type: integer
                        type: object
                    type: object
                type: object
              phase:
                type: string
              snapshotScheduleStatus:
                properties:
                  details:
                    type: string
                  lastChanged:
                    type: string
                  lastChecked:
                    type: string
                  snapshotSchedules:
                    items:
                      properties:
                        image:
                          type: string
                        items:
                          items:
                            properties:
                              interval:
                                type: string
                              start_time:
                                type: string
                            type: object
                          type: array
                        namespace:
                          type: string
                        pool:
                          type: string
                      type: object
                    nullable: true
                    type: array
                type: object
            type: object
            x-kubernetes-preserve-unknown-fields: true
        required:
        - metadata
        - spec
        type: object
    served: true
    storage: true
    subresources:
      status: {}
status:
  acceptedNames:
    kind: CephBlockPoolRadosNamespace
    listKind: CephBlockPoolRadosNamespaceList
    plural: cephblockpoolradosnamespaces
    singular: cephblockpoolradosnamespace
  conditions:
  - lastTransitionTime: "2025-10-27T12:44:11Z"
    message: no conflicts found
    reason: NoConflicts
    status: "True"
    type: NamesAccepted
  - lastTransitionTime: "2025-10-27T12:44:11Z"
    message: the initial names have been accepted
    reason: InitialNamesAccepted
    status: "True"
    type: Established
  storedVersions:
  - v1
