{{- if .Values.lvmLocalPv.enabled -}} {{- $crdName := "lvmnodes.local.openebs.io" -}} {{- if (include "crdIsAbsent" (list $crdName)) -}} ############################################## ########### ############ ########### LVMNode CRD ############ ########### ############ ############################################## # LVMNode CRD is autogenerated via `make manifests` command. # Do the modification in the code and run the `make manifests` command # to generate the CRD definition --- apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: controller-gen.kubebuilder.io/version: v0.4.0 creationTimestamp: null name: lvmnodes.local.openebs.io spec: group: local.openebs.io names: kind: LVMNode listKind: LVMNodeList plural: lvmnodes shortNames: - lvmnode singular: lvmnode scope: Namespaced versions: - name: v1alpha1 schema: openAPIV3Schema: description: LVMNode records information about all lvm volume groups available in a node. In general, the openebs node-agent creates the LVMNode object & periodically synchronizing the volume groups available in the node. LVMNode has an owner reference pointing to the corresponding node object. 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 volumeGroups: items: description: VolumeGroup specifies attributes of a given vg exists on node. properties: allocationPolicy: description: 'AllocationPolicy indicates the volume group allocation policy. AllocationPolicy has the following mapping between int and string for its value: [-1: "", 0: "normal", 1: "contiguous", 2: "cling", 3: "anywhere", 4: "inherited"]' type: integer free: anyOf: - type: integer - type: string description: Free specifies the available capacity of volume group. pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ x-kubernetes-int-or-string: true lvCount: description: LVCount denotes total number of logical volumes in volume group. format: int32 minimum: 0 type: integer maxLv: description: MaxLV denotes maximum number of logical volumes allowed in volume group or 0 if unlimited. format: int32 type: integer maxPv: description: MaxPV denotes maximum number of physical volumes allowed in volume group or 0 if unlimited. format: int32 type: integer metadataCount: description: MetadataCount denotes number of metadata areas on the volume group. format: int32 type: integer metadataFree: anyOf: - type: integer - type: string description: MetadataFree specifies the available metadata area space for the volume group pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ x-kubernetes-int-or-string: true metadataSize: anyOf: - type: integer - type: string description: MetadataSize specifies size of smallest metadata area for the volume group pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ x-kubernetes-int-or-string: true metadataUsedCount: description: MetadataUsedCount denotes number of used metadata areas in volume group format: int32 type: integer missingPvCount: description: MissingPVCount denotes number of physical volumes in volume group which are missing. format: int32 type: integer name: description: Name of the lvm volume group. minLength: 1 type: string permissions: description: 'Permission indicates the volume group permission which can be writable or read-only. Permission has the following mapping between int and string for its value: [-1: "", 0: "writeable", 1: "read-only"]' type: integer pvCount: description: PVCount denotes total number of physical volumes constituting the volume group. format: int32 minimum: 0 type: integer size: anyOf: - type: integer - type: string description: Size specifies the total size of volume group. pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ x-kubernetes-int-or-string: true snapCount: description: SnapCount denotes number of snapshots in volume group. format: int32 type: integer uuid: description: UUID denotes a unique identity of a lvm volume group. minLength: 1 type: string required: - allocationPolicy - free - lvCount - maxLv - maxPv - metadataCount - metadataFree - metadataSize - metadataUsedCount - missingPvCount - name - permissions - pvCount - size - snapCount - uuid type: object type: array required: - volumeGroups type: object served: true storage: true status: acceptedNames: kind: "" plural: "" conditions: [] storedVersions: [] {{- end -}} {{- end -}}