apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
  name: samples.mock.digi.dev
spec:
  group: mock.digi.dev
  names:
    kind: Sample
    listKind: SampleList
    plural: samples
    singular: sample
  scope: Namespaced
  versions:
  - name: v1
    schema:
      openAPIV3Schema:
        properties:
          apiVersion:
            type: string
          kind:
            type: string
          metadata:
            type: object
          spec:
            properties:
              control:
                properties:
                  mode:
                    properties:
                      intent:
                        type: string
                      status:
                        type: string
                    type: object
                  power:
                    properties:
                      intent:
                        type: string
                      status:
                        type: string
                    type: object
                  volume:
                    properties:
                      intent:
                        type: number
                      status:
                        type: number
                    type: object
                type: object
              mount:
                properties:
                  mock.digi.dev/v1/samplelakes:
                    additionalProperties:
                      properties:
                        generation:
                          type: number
                        mode:
                          type: string
                        spec:
                          properties:
                            data:
                              properties:
                                input:
                                  properties:
                                    url:
                                      type: string
                                  type: object
                                output:
                                  properties:
                                    occupied:
                                      type: boolean
                                  type: object
                              type: object
                            obs:
                              properties:
                                reason:
                                  type: string
                              type: object
                          type: object
                        status:
                          type: string
                      type: object
                    type: object
                type: object
              obs:
                properties:
                  objects:
                    items:
                      additionalProperties:
                        properties:
                          h:
                            type: number
                          w:
                            type: number
                          x:
                            type: number
                          y:
                            type: number
                        type: object
                      type: object
                    type: array
                  reason:
                    type: string
                type: object
            type: object
        type: object
    served: true
    storage: true
