---
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:10Z"
  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:10Z"
  - 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:10Z"
  - 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: cephobjectstores.ceph.rook.io
  resourceVersion: "63350"
  uid: 0b6d13f2-200b-474c-a430-0dd95df4d0f7
spec:
  conversion:
    strategy: None
  group: ceph.rook.io
  names:
    kind: CephObjectStore
    listKind: CephObjectStoreList
    plural: cephobjectstores
    singular: cephobjectstore
  scope: Namespaced
  versions:
  - additionalPrinterColumns:
    - jsonPath: .status.phase
      name: Phase
      type: string
    - jsonPath: .status.info.endpoint
      name: Endpoint
      type: string
    - jsonPath: .status.info.secureEndpoint
      name: SecureEndpoint
      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:
              allowUsersInNamespaces:
                items:
                  type: string
                type: array
              auth:
                properties:
                  keystone:
                    nullable: true
                    properties:
                      acceptedRoles:
                        items:
                          type: string
                        type: array
                      implicitTenants:
                        type: string
                      revocationInterval:
                        nullable: true
                        type: integer
                      serviceUserSecretName:
                        type: string
                      tokenCacheSize:
                        nullable: true
                        type: integer
                      url:
                        type: string
                    required:
                    - acceptedRoles
                    - serviceUserSecretName
                    - url
                    type: object
                type: object
              dataPool:
                nullable: true
                properties:
                  application:
                    type: string
                  compressionMode:
                    enum:
                    - none
                    - passive
                    - aggressive
                    - force
                    - ""
                    nullable: true
                    type: string
                  crushRoot:
                    nullable: true
                    type: string
                  deviceClass:
                    nullable: true
                    type: string
                  enableCrushUpdates:
                    type: boolean
                  enableRBDStats:
                    type: boolean
                  erasureCoded:
                    properties:
                      algorithm:
                        type: string
                      codingChunks:
                        minimum: 0
                        type: integer
                      dataChunks:
                        minimum: 0
                        type: integer
                    required:
                    - codingChunks
                    - dataChunks
                    type: object
                  failureDomain:
                    type: string
                  mirroring:
                    properties:
                      enabled:
                        type: boolean
                      mode:
                        enum:
                        - pool
                        - image
                        - init-only
                        type: string
                      peers:
                        nullable: true
                        properties:
                          secretNames:
                            items:
                              type: string
                            type: array
                        type: object
                      snapshotSchedules:
                        items:
                          properties:
                            interval:
                              type: string
                            path:
                              type: string
                            startTime:
                              type: string
                          type: object
                        type: array
                    type: object
                  parameters:
                    additionalProperties:
                      type: string
                    nullable: true
                    type: object
                    x-kubernetes-preserve-unknown-fields: true
                  quotas:
                    nullable: true
                    properties:
                      maxBytes:
                        format: int64
                        type: integer
                      maxObjects:
                        format: int64
                        type: integer
                      maxSize:
                        pattern: ^[0-9]+[\.]?[0-9]*([KMGTPE]i|[kMGTPE])?$
                        type: string
                    type: object
                  replicated:
                    properties:
                      hybridStorage:
                        nullable: true
                        properties:
                          primaryDeviceClass:
                            minLength: 1
                            type: string
                          secondaryDeviceClass:
                            minLength: 1
                            type: string
                        required:
                        - primaryDeviceClass
                        - secondaryDeviceClass
                        type: object
                      replicasPerFailureDomain:
                        minimum: 1
                        type: integer
                      requireSafeReplicaSize:
                        type: boolean
                      size:
                        minimum: 0
                        type: integer
                      subFailureDomain:
                        type: string
                      targetSizeRatio:
                        type: number
                    required:
                    - size
                    type: object
                  statusCheck:
                    properties:
                      mirror:
                        nullable: true
                        properties:
                          disabled:
                            type: boolean
                          interval:
                            type: string
                          timeout:
                            type: string
                        type: object
                    type: object
                    x-kubernetes-preserve-unknown-fields: true
                type: object
              gateway:
                nullable: true
                properties:
                  additionalVolumeMounts:
                    items:
                      properties:
                        subPath:
                          minLength: 1
                          pattern: ^[^:]+$
                          type: string
                        volumeSource:
                          properties:
                            configMap:
                              properties:
                                defaultMode:
                                  format: int32
                                  type: integer
                                items:
                                  items:
                                    properties:
                                      key:
                                        type: string
                                      mode:
                                        format: int32
                                        type: integer
                                      path:
                                        type: string
                                    required:
                                    - key
                                    - path
                                    type: object
                                  type: array
                                  x-kubernetes-list-type: atomic
                                name:
                                  default: ""
                                  type: string
                                optional:
                                  type: boolean
                              type: object
                              x-kubernetes-map-type: atomic
                            emptyDir:
                              properties:
                                medium:
                                  type: string
                                sizeLimit:
                                  anyOf:
                                  - type: integer
                                  - type: string
                                  pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
                                  x-kubernetes-int-or-string: true
                              type: object
                            hostPath:
                              properties:
                                path:
                                  type: string
                                type:
                                  type: string
                              required:
                              - path
                              type: object
                            persistentVolumeClaim:
                              properties:
                                claimName:
                                  type: string
                                readOnly:
                                  type: boolean
                              required:
                              - claimName
                              type: object
                            projected:
                              properties:
                                defaultMode:
                                  format: int32
                                  type: integer
                                sources:
                                  items:
                                    properties:
                                      clusterTrustBundle:
                                        properties:
                                          labelSelector:
                                            properties:
                                              matchExpressions:
                                                items:
                                                  properties:
                                                    key:
                                                      type: string
                                                    operator:
                                                      type: string
                                                    values:
                                                      items:
                                                        type: string
                                                      type: array
                                                      x-kubernetes-list-type: atomic
                                                  required:
                                                  - key
                                                  - operator
                                                  type: object
                                                type: array
                                                x-kubernetes-list-type: atomic
                                              matchLabels:
                                                additionalProperties:
                                                  type: string
                                                type: object
                                            type: object
                                            x-kubernetes-map-type: atomic
                                          name:
                                            type: string
                                          optional:
                                            type: boolean
                                          path:
                                            type: string
                                          signerName:
                                            type: string
                                        required:
                                        - path
                                        type: object
                                      configMap:
                                        properties:
                                          items:
                                            items:
                                              properties:
                                                key:
                                                  type: string
                                                mode:
                                                  format: int32
                                                  type: integer
                                                path:
                                                  type: string
                                              required:
                                              - key
                                              - path
                                              type: object
                                            type: array
                                            x-kubernetes-list-type: atomic
                                          name:
                                            default: ""
                                            type: string
                                          optional:
                                            type: boolean
                                        type: object
                                        x-kubernetes-map-type: atomic
                                      downwardAPI:
                                        properties:
                                          items:
                                            items:
                                              properties:
                                                fieldRef:
                                                  properties:
                                                    apiVersion:
                                                      type: string
                                                    fieldPath:
                                                      type: string
                                                  required:
                                                  - fieldPath
                                                  type: object
                                                  x-kubernetes-map-type: atomic
                                                mode:
                                                  format: int32
                                                  type: integer
                                                path:
                                                  type: string
                                                resourceFieldRef:
                                                  properties:
                                                    containerName:
                                                      type: string
                                                    divisor:
                                                      anyOf:
                                                      - type: integer
                                                      - type: string
                                                      pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
                                                      x-kubernetes-int-or-string: true
                                                    resource:
                                                      type: string
                                                  required:
                                                  - resource
                                                  type: object
                                                  x-kubernetes-map-type: atomic
                                              required:
                                              - path
                                              type: object
                                            type: array
                                            x-kubernetes-list-type: atomic
                                        type: object
                                      secret:
                                        properties:
                                          items:
                                            items:
                                              properties:
                                                key:
                                                  type: string
                                                mode:
                                                  format: int32
                                                  type: integer
                                                path:
                                                  type: string
                                              required:
                                              - key
                                              - path
                                              type: object
                                            type: array
                                            x-kubernetes-list-type: atomic
                                          name:
                                            default: ""
                                            type: string
                                          optional:
                                            type: boolean
                                        type: object
                                        x-kubernetes-map-type: atomic
                                      serviceAccountToken:
                                        properties:
                                          audience:
                                            type: string
                                          expirationSeconds:
                                            format: int64
                                            type: integer
                                          path:
                                            type: string
                                        required:
                                        - path
                                        type: object
                                    type: object
                                  type: array
                                  x-kubernetes-list-type: atomic
                              type: object
                            secret:
                              properties:
                                defaultMode:
                                  format: int32
                                  type: integer
                                items:
                                  items:
                                    properties:
                                      key:
                                        type: string
                                      mode:
                                        format: int32
                                        type: integer
                                      path:
                                        type: string
                                    required:
                                    - key
                                    - path
                                    type: object
                                  type: array
                                  x-kubernetes-list-type: atomic
                                optional:
                                  type: boolean
                                secretName:
                                  type: string
                              type: object
                          type: object
                      required:
                      - subPath
                      - volumeSource
                      type: object
                    type: array
                  annotations:
                    additionalProperties:
                      type: string
                    nullable: true
                    type: object
                    x-kubernetes-preserve-unknown-fields: true
                  caBundleRef:
                    nullable: true
                    type: string
                  dashboardEnabled:
                    nullable: true
                    type: boolean
                    x-kubernetes-preserve-unknown-fields: true
                  disableMultisiteSyncTraffic:
                    type: boolean
                  externalRgwEndpoints:
                    items:
                      properties:
                        hostname:
                          type: string
                        ip:
                          type: string
                      type: object
                      x-kubernetes-map-type: atomic
                    nullable: true
                    type: array
                  hostNetwork:
                    nullable: true
                    type: boolean
                    x-kubernetes-preserve-unknown-fields: true
                  instances:
                    format: int32
                    nullable: true
                    type: integer
                  labels:
                    additionalProperties:
                      type: string
                    nullable: true
                    type: object
                    x-kubernetes-preserve-unknown-fields: true
                  opsLogSidecar:
                    nullable: true
                    properties:
                      resources:
                        properties:
                          claims:
                            items:
                              properties:
                                name:
                                  type: string
                                request:
                                  type: string
                              required:
                              - name
                              type: object
                            type: array
                            x-kubernetes-list-map-keys:
                            - name
                            x-kubernetes-list-type: map
                          limits:
                            additionalProperties:
                              anyOf:
                              - type: integer
                              - type: string
                              pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
                              x-kubernetes-int-or-string: true
                            type: object
                          requests:
                            additionalProperties:
                              anyOf:
                              - type: integer
                              - type: string
                              pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
                              x-kubernetes-int-or-string: true
                            type: object
                        type: object
                    type: object
                  placement:
                    nullable: true
                    properties:
                      nodeAffinity:
                        properties:
                          preferredDuringSchedulingIgnoredDuringExecution:
                            items:
                              properties:
                                preference:
                                  properties:
                                    matchExpressions:
                                      items:
                                        properties:
                                          key:
                                            type: string
                                          operator:
                                            type: string
                                          values:
                                            items:
                                              type: string
                                            type: array
                                            x-kubernetes-list-type: atomic
                                        required:
                                        - key
                                        - operator
                                        type: object
                                      type: array
                                      x-kubernetes-list-type: atomic
                                    matchFields:
                                      items:
                                        properties:
                                          key:
                                            type: string
                                          operator:
                                            type: string
                                          values:
                                            items:
                                              type: string
                                            type: array
                                            x-kubernetes-list-type: atomic
                                        required:
                                        - key
                                        - operator
                                        type: object
                                      type: array
                                      x-kubernetes-list-type: atomic
                                  type: object
                                  x-kubernetes-map-type: atomic
                                weight:
                                  format: int32
                                  type: integer
                              required:
                              - preference
                              - weight
                              type: object
                            type: array
                            x-kubernetes-list-type: atomic
                          requiredDuringSchedulingIgnoredDuringExecution:
                            properties:
                              nodeSelectorTerms:
                                items:
                                  properties:
                                    matchExpressions:
                                      items:
                                        properties:
                                          key:
                                            type: string
                                          operator:
                                            type: string
                                          values:
                                            items:
                                              type: string
                                            type: array
                                            x-kubernetes-list-type: atomic
                                        required:
                                        - key
                                        - operator
                                        type: object
                                      type: array
                                      x-kubernetes-list-type: atomic
                                    matchFields:
                                      items:
                                        properties:
                                          key:
                                            type: string
                                          operator:
                                            type: string
                                          values:
                                            items:
                                              type: string
                                            type: array
                                            x-kubernetes-list-type: atomic
                                        required:
                                        - key
                                        - operator
                                        type: object
                                      type: array
                                      x-kubernetes-list-type: atomic
                                  type: object
                                  x-kubernetes-map-type: atomic
                                type: array
                                x-kubernetes-list-type: atomic
                            required:
                            - nodeSelectorTerms
                            type: object
                            x-kubernetes-map-type: atomic
                        type: object
                      podAffinity:
                        properties:
                          preferredDuringSchedulingIgnoredDuringExecution:
                            items:
                              properties:
                                podAffinityTerm:
                                  properties:
                                    labelSelector:
                                      properties:
                                        matchExpressions:
                                          items:
                                            properties:
                                              key:
                                                type: string
                                              operator:
                                                type: string
                                              values:
                                                items:
                                                  type: string
                                                type: array
                                                x-kubernetes-list-type: atomic
                                            required:
                                            - key
                                            - operator
                                            type: object
                                          type: array
                                          x-kubernetes-list-type: atomic
                                        matchLabels:
                                          additionalProperties:
                                            type: string
                                          type: object
                                      type: object
                                      x-kubernetes-map-type: atomic
                                    matchLabelKeys:
                                      items:
                                        type: string
                                      type: array
                                      x-kubernetes-list-type: atomic
                                    mismatchLabelKeys:
                                      items:
                                        type: string
                                      type: array
                                      x-kubernetes-list-type: atomic
                                    namespaceSelector:
                                      properties:
                                        matchExpressions:
                                          items:
                                            properties:
                                              key:
                                                type: string
                                              operator:
                                                type: string
                                              values:
                                                items:
                                                  type: string
                                                type: array
                                                x-kubernetes-list-type: atomic
                                            required:
                                            - key
                                            - operator
                                            type: object
                                          type: array
                                          x-kubernetes-list-type: atomic
                                        matchLabels:
                                          additionalProperties:
                                            type: string
                                          type: object
                                      type: object
                                      x-kubernetes-map-type: atomic
                                    namespaces:
                                      items:
                                        type: string
                                      type: array
                                      x-kubernetes-list-type: atomic
                                    topologyKey:
                                      type: string
                                  required:
                                  - topologyKey
                                  type: object
                                weight:
                                  format: int32
                                  type: integer
                              required:
                              - podAffinityTerm
                              - weight
                              type: object
                            type: array
                            x-kubernetes-list-type: atomic
                          requiredDuringSchedulingIgnoredDuringExecution:
                            items:
                              properties:
                                labelSelector:
                                  properties:
                                    matchExpressions:
                                      items:
                                        properties:
                                          key:
                                            type: string
                                          operator:
                                            type: string
                                          values:
                                            items:
                                              type: string
                                            type: array
                                            x-kubernetes-list-type: atomic
                                        required:
                                        - key
                                        - operator
                                        type: object
                                      type: array
                                      x-kubernetes-list-type: atomic
                                    matchLabels:
                                      additionalProperties:
                                        type: string
                                      type: object
                                  type: object
                                  x-kubernetes-map-type: atomic
                                matchLabelKeys:
                                  items:
                                    type: string
                                  type: array
                                  x-kubernetes-list-type: atomic
                                mismatchLabelKeys:
                                  items:
                                    type: string
                                  type: array
                                  x-kubernetes-list-type: atomic
                                namespaceSelector:
                                  properties:
                                    matchExpressions:
                                      items:
                                        properties:
                                          key:
                                            type: string
                                          operator:
                                            type: string
                                          values:
                                            items:
                                              type: string
                                            type: array
                                            x-kubernetes-list-type: atomic
                                        required:
                                        - key
                                        - operator
                                        type: object
                                      type: array
                                      x-kubernetes-list-type: atomic
                                    matchLabels:
                                      additionalProperties:
                                        type: string
                                      type: object
                                  type: object
                                  x-kubernetes-map-type: atomic
                                namespaces:
                                  items:
                                    type: string
                                  type: array
                                  x-kubernetes-list-type: atomic
                                topologyKey:
                                  type: string
                              required:
                              - topologyKey
                              type: object
                            type: array
                            x-kubernetes-list-type: atomic
                        type: object
                      podAntiAffinity:
                        properties:
                          preferredDuringSchedulingIgnoredDuringExecution:
                            items:
                              properties:
                                podAffinityTerm:
                                  properties:
                                    labelSelector:
                                      properties:
                                        matchExpressions:
                                          items:
                                            properties:
                                              key:
                                                type: string
                                              operator:
                                                type: string
                                              values:
                                                items:
                                                  type: string
                                                type: array
                                                x-kubernetes-list-type: atomic
                                            required:
                                            - key
                                            - operator
                                            type: object
                                          type: array
                                          x-kubernetes-list-type: atomic
                                        matchLabels:
                                          additionalProperties:
                                            type: string
                                          type: object
                                      type: object
                                      x-kubernetes-map-type: atomic
                                    matchLabelKeys:
                                      items:
                                        type: string
                                      type: array
                                      x-kubernetes-list-type: atomic
                                    mismatchLabelKeys:
                                      items:
                                        type: string
                                      type: array
                                      x-kubernetes-list-type: atomic
                                    namespaceSelector:
                                      properties:
                                        matchExpressions:
                                          items:
                                            properties:
                                              key:
                                                type: string
                                              operator:
                                                type: string
                                              values:
                                                items:
                                                  type: string
                                                type: array
                                                x-kubernetes-list-type: atomic
                                            required:
                                            - key
                                            - operator
                                            type: object
                                          type: array
                                          x-kubernetes-list-type: atomic
                                        matchLabels:
                                          additionalProperties:
                                            type: string
                                          type: object
                                      type: object
                                      x-kubernetes-map-type: atomic
                                    namespaces:
                                      items:
                                        type: string
                                      type: array
                                      x-kubernetes-list-type: atomic
                                    topologyKey:
                                      type: string
                                  required:
                                  - topologyKey
                                  type: object
                                weight:
                                  format: int32
                                  type: integer
                              required:
                              - podAffinityTerm
                              - weight
                              type: object
                            type: array
                            x-kubernetes-list-type: atomic
                          requiredDuringSchedulingIgnoredDuringExecution:
                            items:
                              properties:
                                labelSelector:
                                  properties:
                                    matchExpressions:
                                      items:
                                        properties:
                                          key:
                                            type: string
                                          operator:
                                            type: string
                                          values:
                                            items:
                                              type: string
                                            type: array
                                            x-kubernetes-list-type: atomic
                                        required:
                                        - key
                                        - operator
                                        type: object
                                      type: array
                                      x-kubernetes-list-type: atomic
                                    matchLabels:
                                      additionalProperties:
                                        type: string
                                      type: object
                                  type: object
                                  x-kubernetes-map-type: atomic
                                matchLabelKeys:
                                  items:
                                    type: string
                                  type: array
                                  x-kubernetes-list-type: atomic
                                mismatchLabelKeys:
                                  items:
                                    type: string
                                  type: array
                                  x-kubernetes-list-type: atomic
                                namespaceSelector:
                                  properties:
                                    matchExpressions:
                                      items:
                                        properties:
                                          key:
                                            type: string
                                          operator:
                                            type: string
                                          values:
                                            items:
                                              type: string
                                            type: array
                                            x-kubernetes-list-type: atomic
                                        required:
                                        - key
                                        - operator
                                        type: object
                                      type: array
                                      x-kubernetes-list-type: atomic
                                    matchLabels:
                                      additionalProperties:
                                        type: string
                                      type: object
                                  type: object
                                  x-kubernetes-map-type: atomic
                                namespaces:
                                  items:
                                    type: string
                                  type: array
                                  x-kubernetes-list-type: atomic
                                topologyKey:
                                  type: string
                              required:
                              - topologyKey
                              type: object
                            type: array
                            x-kubernetes-list-type: atomic
                        type: object
                      tolerations:
                        items:
                          properties:
                            effect:
                              type: string
                            key:
                              type: string
                            operator:
                              type: string
                            tolerationSeconds:
                              format: int64
                              type: integer
                            value:
                              type: string
                          type: object
                        type: array
                      topologySpreadConstraints:
                        items:
                          properties:
                            labelSelector:
                              properties:
                                matchExpressions:
                                  items:
                                    properties:
                                      key:
                                        type: string
                                      operator:
                                        type: string
                                      values:
                                        items:
                                          type: string
                                        type: array
                                        x-kubernetes-list-type: atomic
                                    required:
                                    - key
                                    - operator
                                    type: object
                                  type: array
                                  x-kubernetes-list-type: atomic
                                matchLabels:
                                  additionalProperties:
                                    type: string
                                  type: object
                              type: object
                              x-kubernetes-map-type: atomic
                            matchLabelKeys:
                              items:
                                type: string
                              type: array
                              x-kubernetes-list-type: atomic
                            maxSkew:
                              format: int32
                              type: integer
                            minDomains:
                              format: int32
                              type: integer
                            nodeAffinityPolicy:
                              type: string
                            nodeTaintsPolicy:
                              type: string
                            topologyKey:
                              type: string
                            whenUnsatisfiable:
                              type: string
                          required:
                          - maxSkew
                          - topologyKey
                          - whenUnsatisfiable
                          type: object
                        type: array
                    type: object
                    x-kubernetes-preserve-unknown-fields: true
                  port:
                    format: int32
                    type: integer
                  priorityClassName:
                    type: string
                  readAffinity:
                    properties:
                      type:
                        enum:
                        - localize
                        - balance
                        - default
                        type: string
                    required:
                    - type
                    type: object
                  resources:
                    nullable: true
                    properties:
                      claims:
                        items:
                          properties:
                            name:
                              type: string
                            request:
                              type: string
                          required:
                          - name
                          type: object
                        type: array
                        x-kubernetes-list-map-keys:
                        - name
                        x-kubernetes-list-type: map
                      limits:
                        additionalProperties:
                          anyOf:
                          - type: integer
                          - type: string
                          pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
                          x-kubernetes-int-or-string: true
                        type: object
                      requests:
                        additionalProperties:
                          anyOf:
                          - type: integer
                          - type: string
                          pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
                          x-kubernetes-int-or-string: true
                        type: object
                    type: object
                    x-kubernetes-preserve-unknown-fields: true
                  rgwCommandFlags:
                    additionalProperties:
                      type: string
                    nullable: true
                    type: object
                  rgwConfig:
                    additionalProperties:
                      type: string
                    nullable: true
                    type: object
                  rgwConfigFromSecret:
                    additionalProperties:
                      properties:
                        key:
                          type: string
                        name:
                          default: ""
                          type: string
                        optional:
                          type: boolean
                      required:
                      - key
                      type: object
                      x-kubernetes-map-type: atomic
                    nullable: true
                    type: object
                  securePort:
                    format: int32
                    maximum: 65535
                    minimum: 0
                    nullable: true
                    type: integer
                  service:
                    nullable: true
                    properties:
                      annotations:
                        additionalProperties:
                          type: string
                        type: object
                    type: object
                  sslCertificateRef:
                    nullable: true
                    type: string
                type: object
              healthCheck:
                nullable: true
                properties:
                  readinessProbe:
                    properties:
                      disabled:
                        type: boolean
                      probe:
                        properties:
                          exec:
                            properties:
                              command:
                                items:
                                  type: string
                                type: array
                                x-kubernetes-list-type: atomic
                            type: object
                          failureThreshold:
                            format: int32
                            type: integer
                          grpc:
                            properties:
                              port:
                                format: int32
                                type: integer
                              service:
                                default: ""
                                type: string
                            required:
                            - port
                            type: object
                          httpGet:
                            properties:
                              host:
                                type: string
                              httpHeaders:
                                items:
                                  properties:
                                    name:
                                      type: string
                                    value:
                                      type: string
                                  required:
                                  - name
                                  - value
                                  type: object
                                type: array
                                x-kubernetes-list-type: atomic
                              path:
                                type: string
                              port:
                                anyOf:
                                - type: integer
                                - type: string
                                x-kubernetes-int-or-string: true
                              scheme:
                                type: string
                            required:
                            - port
                            type: object
                          initialDelaySeconds:
                            format: int32
                            type: integer
                          periodSeconds:
                            format: int32
                            type: integer
                          successThreshold:
                            format: int32
                            type: integer
                          tcpSocket:
                            properties:
                              host:
                                type: string
                              port:
                                anyOf:
                                - type: integer
                                - type: string
                                x-kubernetes-int-or-string: true
                            required:
                            - port
                            type: object
                          terminationGracePeriodSeconds:
                            format: int64
                            type: integer
                          timeoutSeconds:
                            format: int32
                            type: integer
                        type: object
                    type: object
                    x-kubernetes-preserve-unknown-fields: true
                  startupProbe:
                    properties:
                      disabled:
                        type: boolean
                      probe:
                        properties:
                          exec:
                            properties:
                              command:
                                items:
                                  type: string
                                type: array
                                x-kubernetes-list-type: atomic
                            type: object
                          failureThreshold:
                            format: int32
                            type: integer
                          grpc:
                            properties:
                              port:
                                format: int32
                                type: integer
                              service:
                                default: ""
                                type: string
                            required:
                            - port
                            type: object
                          httpGet:
                            properties:
                              host:
                                type: string
                              httpHeaders:
                                items:
                                  properties:
                                    name:
                                      type: string
                                    value:
                                      type: string
                                  required:
                                  - name
                                  - value
                                  type: object
                                type: array
                                x-kubernetes-list-type: atomic
                              path:
                                type: string
                              port:
                                anyOf:
                                - type: integer
                                - type: string
                                x-kubernetes-int-or-string: true
                              scheme:
                                type: string
                            required:
                            - port
                            type: object
                          initialDelaySeconds:
                            format: int32
                            type: integer
                          periodSeconds:
                            format: int32
                            type: integer
                          successThreshold:
                            format: int32
                            type: integer
                          tcpSocket:
                            properties:
                              host:
                                type: string
                              port:
                                anyOf:
                                - type: integer
                                - type: string
                                x-kubernetes-int-or-string: true
                            required:
                            - port
                            type: object
                          terminationGracePeriodSeconds:
                            format: int64
                            type: integer
                          timeoutSeconds:
                            format: int32
                            type: integer
                        type: object
                    type: object
                type: object
              hosting:
                nullable: true
                properties:
                  advertiseEndpoint:
                    nullable: true
                    properties:
                      dnsName:
                        minLength: 1
                        type: string
                      port:
                        format: int32
                        maximum: 65535
                        minimum: 1
                        type: integer
                      useTls:
                        type: boolean
                    required:
                    - dnsName
                    - port
                    - useTls
                    type: object
                  dnsNames:
                    items:
                      type: string
                    type: array
                type: object
              metadataPool:
                nullable: true
                properties:
                  application:
                    type: string
                  compressionMode:
                    enum:
                    - none
                    - passive
                    - aggressive
                    - force
                    - ""
                    nullable: true
                    type: string
                  crushRoot:
                    nullable: true
                    type: string
                  deviceClass:
                    nullable: true
                    type: string
                  enableCrushUpdates:
                    type: boolean
                  enableRBDStats:
                    type: boolean
                  erasureCoded:
                    properties:
                      algorithm:
                        type: string
                      codingChunks:
                        minimum: 0
                        type: integer
                      dataChunks:
                        minimum: 0
                        type: integer
                    required:
                    - codingChunks
                    - dataChunks
                    type: object
                  failureDomain:
                    type: string
                  mirroring:
                    properties:
                      enabled:
                        type: boolean
                      mode:
                        enum:
                        - pool
                        - image
                        - init-only
                        type: string
                      peers:
                        nullable: true
                        properties:
                          secretNames:
                            items:
                              type: string
                            type: array
                        type: object
                      snapshotSchedules:
                        items:
                          properties:
                            interval:
                              type: string
                            path:
                              type: string
                            startTime:
                              type: string
                          type: object
                        type: array
                    type: object
                  parameters:
                    additionalProperties:
                      type: string
                    nullable: true
                    type: object
                    x-kubernetes-preserve-unknown-fields: true
                  quotas:
                    nullable: true
                    properties:
                      maxBytes:
                        format: int64
                        type: integer
                      maxObjects:
                        format: int64
                        type: integer
                      maxSize:
                        pattern: ^[0-9]+[\.]?[0-9]*([KMGTPE]i|[kMGTPE])?$
                        type: string
                    type: object
                  replicated:
                    properties:
                      hybridStorage:
                        nullable: true
                        properties:
                          primaryDeviceClass:
                            minLength: 1
                            type: string
                          secondaryDeviceClass:
                            minLength: 1
                            type: string
                        required:
                        - primaryDeviceClass
                        - secondaryDeviceClass
                        type: object
                      replicasPerFailureDomain:
                        minimum: 1
                        type: integer
                      requireSafeReplicaSize:
                        type: boolean
                      size:
                        minimum: 0
                        type: integer
                      subFailureDomain:
                        type: string
                      targetSizeRatio:
                        type: number
                    required:
                    - size
                    type: object
                  statusCheck:
                    properties:
                      mirror:
                        nullable: true
                        properties:
                          disabled:
                            type: boolean
                          interval:
                            type: string
                          timeout:
                            type: string
                        type: object
                    type: object
                    x-kubernetes-preserve-unknown-fields: true
                type: object
              preservePoolsOnDelete:
                type: boolean
              protocols:
                properties:
                  enableAPIs:
                    items:
                      enum:
                      - s3
                      - s3website
                      - swift
                      - swift_auth
                      - admin
                      - sts
                      - iam
                      - notifications
                      type: string
                    nullable: true
                    type: array
                  s3:
                    nullable: true
                    properties:
                      authUseKeystone:
                        nullable: true
                        type: boolean
                      enabled:
                        nullable: true
                        type: boolean
                    type: object
                  swift:
                    nullable: true
                    properties:
                      accountInUrl:
                        nullable: true
                        type: boolean
                      urlPrefix:
                        nullable: true
                        type: string
                      versioningEnabled:
                        nullable: true
                        type: boolean
                    type: object
                type: object
              security:
                nullable: true
                properties:
                  keyRotation:
                    nullable: true
                    properties:
                      enabled:
                        default: false
                        type: boolean
                      schedule:
                        type: string
                    type: object
                  kms:
                    nullable: true
                    properties:
                      connectionDetails:
                        additionalProperties:
                          type: string
                        nullable: true
                        type: object
                        x-kubernetes-preserve-unknown-fields: true
                      tokenSecretName:
                        type: string
                    type: object
                  s3:
                    nullable: true
                    properties:
                      connectionDetails:
                        additionalProperties:
                          type: string
                        nullable: true
                        type: object
                        x-kubernetes-preserve-unknown-fields: true
                      tokenSecretName:
                        type: string
                    type: object
                type: object
              sharedPools:
                nullable: true
                properties:
                  dataPoolName:
                    type: string
                    x-kubernetes-validations:
                    - message: object store shared data pool is immutable
                      rule: self == oldSelf
                  metadataPoolName:
                    type: string
                    x-kubernetes-validations:
                    - message: object store shared metadata pool is immutable
                      rule: self == oldSelf
                  poolPlacements:
                    items:
                      properties:
                        dataNonECPoolName:
                          type: string
                        dataPoolName:
                          minLength: 1
                          type: string
                        default:
                          type: boolean
                        metadataPoolName:
                          minLength: 1
                          type: string
                        name:
                          minLength: 1
                          pattern: ^[a-zA-Z0-9._/-]+$
                          type: string
                        storageClasses:
                          items:
                            properties:
                              dataPoolName:
                                minLength: 1
                                type: string
                              name:
                                minLength: 1
                                pattern: ^[a-zA-Z0-9._/-]+$
                                type: string
                            required:
                            - dataPoolName
                            - name
                            type: object
                          type: array
                      required:
                      - dataPoolName
                      - metadataPoolName
                      - name
                      type: object
                    type: array
                  preserveRadosNamespaceDataOnDelete:
                    type: boolean
                type: object
              zone:
                nullable: true
                properties:
                  name:
                    type: string
                required:
                - name
                type: object
            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
              endpoints:
                properties:
                  insecure:
                    items:
                      type: string
                    nullable: true
                    type: array
                  secure:
                    items:
                      type: string
                    nullable: true
                    type: array
                type: object
              info:
                additionalProperties:
                  type: string
                nullable: true
                type: object
              message:
                type: string
              observedGeneration:
                format: int64
                type: integer
              phase:
                type: string
            type: object
            x-kubernetes-preserve-unknown-fields: true
        required:
        - metadata
        - spec
        type: object
    served: true
    storage: true
    subresources:
      status: {}
status:
  acceptedNames:
    kind: CephObjectStore
    listKind: CephObjectStoreList
    plural: cephobjectstores
    singular: cephobjectstore
  conditions:
  - lastTransitionTime: "2025-10-27T12:44:10Z"
    message: no conflicts found
    reason: NoConflicts
    status: "True"
    type: NamesAccepted
  - lastTransitionTime: "2025-10-27T12:44:10Z"
    message: the initial names have been accepted
    reason: InitialNamesAccepted
    status: "True"
    type: Established
  storedVersions:
  - v1
