---
apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition

metadata:
  name: volumes.longhorn.io
  labels:
    longhorn-manager: Volume

spec:
  group: longhorn.io
  names:
    kind: Volume
    listKind: VolumeList
    plural: volumes
    shortNames:
      - lhv
    singular: volume
  scope: Namespaced
  versions:
    - name: v1beta1
      served: true
      storage: true
      schema:
        openAPIV3Schema:
          type: object
          properties:
            spec:
              x-kubernetes-preserve-unknown-fields: true
            status:
              x-kubernetes-preserve-unknown-fields: true
      subresources:
        status: {}
      additionalPrinterColumns:
        - name: State
          type: string
          description: The state of the volume
          jsonPath: .status.state
        - name: Robustness
          type: string
          description: The robustness of the volume
          jsonPath: .status.robustness
        - name: Scheduled
          type: string
          description: The scheduled condition of the volume
          jsonPath: .status.conditions['scheduled']['status']
        - name: Size
          type: string
          description: The size of the volume
          jsonPath: .spec.size
        - name: Node
          type: string
          description: The node that the volume is currently attaching to
          jsonPath: .status.currentNodeID
        - name: Age
          type: date
          jsonPath: .metadata.creationTimestamp

...
