---
apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
  annotations:
    controller-gen.kubebuilder.io/version: v0.4.1
  name: storageconsumers.ocs.openshift.io
spec:
  group: ocs.openshift.io
  names:
    kind: StorageConsumer
    listKind: StorageConsumerList
    plural: storageconsumers
    singular: storageconsumer
  scope: Namespaced
  versions:
  - name: v1alpha1
    schema:
      openAPIV3Schema:
        description: StorageConsumer is the Schema for the storageconsumers API
        properties:
          apiVersion:
            description: 'APIVersion defines the versioned schema of this representation
              of an object. Servers should convert recognized schemas to the latest
              internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
            type: string
          kind:
            description: 'Kind is a string value representing the REST resource this
              object represents. Servers may infer this from the endpoint the client
              submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
            type: string
          metadata:
            type: object
          spec:
            description: StorageConsumerSpec defines the desired state of StorageConsumer
            properties:
              capacity:
                anyOf:
                - type: integer
                - type: string
                description: Capacity is the total quota size allocated to a consumer.
                pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
                x-kubernetes-int-or-string: true
            required:
            - capacity
            type: object
          status:
            description: StorageConsumerStatus defines the observed state of StorageConsumer
            properties:
              cephResources:
                description: CephResources provide details of created ceph resources
                  required for external storage
                items:
                  description: CephResourcesSpec hold details of created ceph resources
                    required for external storage
                  properties:
                    cephClients:
                      additionalProperties:
                        type: string
                      description: CephClients holds the name of CephClients mapped
                        to the created ceph resource
                      type: object
                    kind:
                      description: Kind describes the kind of created ceph resource
                      type: string
                    name:
                      description: Name describes the name of created ceph resource
                      type: string
                    status:
                      description: Phase describes the phase of created ceph resource
                      type: string
                  type: object
                type: array
              grantedCapacity:
                anyOf:
                - type: integer
                - type: string
                description: GrantedCapacity holds granted capacity value for the
                  consumer
                pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
                x-kubernetes-int-or-string: true
              state:
                description: State describes the state of StorageConsumer
                type: string
            type: object
        type: object
    served: true
    storage: true
    subresources:
      status: {}
