github.com/openebs/node-disk-manager@v1.9.1-0.20230225014141-4531f06ffa1e/deploy/crds/openebs.io_blockdevices.yaml (about) 1 2 --- 3 apiVersion: apiextensions.k8s.io/v1 4 kind: CustomResourceDefinition 5 metadata: 6 annotations: 7 controller-gen.kubebuilder.io/version: v0.5.0 8 creationTimestamp: null 9 name: blockdevices.openebs.io 10 spec: 11 group: openebs.io 12 names: 13 kind: BlockDevice 14 listKind: BlockDeviceList 15 plural: blockdevices 16 shortNames: 17 - bd 18 singular: blockdevice 19 scope: Namespaced 20 versions: 21 - additionalPrinterColumns: 22 - jsonPath: .spec.nodeAttributes.nodeName 23 name: NodeName 24 type: string 25 - jsonPath: .spec.path 26 name: Path 27 priority: 1 28 type: string 29 - jsonPath: .spec.filesystem.fsType 30 name: FSType 31 priority: 1 32 type: string 33 - jsonPath: .spec.capacity.storage 34 name: Size 35 type: string 36 - jsonPath: .status.claimState 37 name: ClaimState 38 type: string 39 - jsonPath: .status.state 40 name: Status 41 type: string 42 - jsonPath: .metadata.creationTimestamp 43 name: Age 44 type: date 45 name: v1alpha1 46 schema: 47 openAPIV3Schema: 48 description: BlockDevice is the Schema for the blockdevices API 49 properties: 50 apiVersion: 51 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' 52 type: string 53 kind: 54 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' 55 type: string 56 metadata: 57 type: object 58 spec: 59 description: DeviceSpec defines the properties and runtime status of a BlockDevice 60 properties: 61 aggregateDevice: 62 description: AggregateDevice was intended to store the hierarchical information in cases of LVM. However this is currently not implemented and may need to be re-looked into for better design. To be deprecated 63 type: string 64 capacity: 65 description: Capacity 66 properties: 67 logicalSectorSize: 68 description: LogicalSectorSize is blockdevice logical-sector size in bytes 69 format: int32 70 type: integer 71 physicalSectorSize: 72 description: PhysicalSectorSize is blockdevice physical-Sector size in bytes 73 format: int32 74 type: integer 75 storage: 76 description: Storage is the blockdevice capacity in bytes 77 format: int64 78 type: integer 79 required: 80 - storage 81 type: object 82 claimRef: 83 description: ClaimRef is the reference to the BDC which has claimed this BD 84 properties: 85 apiVersion: 86 description: API version of the referent. 87 type: string 88 fieldPath: 89 description: 'If referring to a piece of an object instead of an entire object, this string should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2]. For example, if the object reference is to a container within a pod, this would take on a value like: "spec.containers{name}" (where "name" refers to the name of the container that triggered the event) or if no container name is specified "spec.containers[2]" (container with index 2 in this pod). This syntax is chosen only to have some well-defined way of referencing a part of an object. TODO: this design is not final and this field is subject to change in the future.' 90 type: string 91 kind: 92 description: 'Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' 93 type: string 94 name: 95 description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names' 96 type: string 97 namespace: 98 description: 'Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/' 99 type: string 100 resourceVersion: 101 description: 'Specific resourceVersion to which this reference is made, if any. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency' 102 type: string 103 uid: 104 description: 'UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids' 105 type: string 106 type: object 107 details: 108 description: Details contain static attributes of BD like model,serial, and so forth 109 properties: 110 compliance: 111 description: Compliance is standards/specifications version implemented by device firmware such as SPC-1, SPC-2, etc 112 type: string 113 deviceType: 114 description: DeviceType represents the type of device like sparse, disk, partition, lvm, crypt 115 enum: 116 - disk 117 - partition 118 - sparse 119 - loop 120 - lvm 121 - crypt 122 - dm 123 - mpath 124 type: string 125 driveType: 126 description: DriveType is the type of backing drive, HDD/SSD 127 enum: 128 - HDD 129 - SSD 130 - Unknown 131 - "" 132 type: string 133 firmwareRevision: 134 description: FirmwareRevision is the disk firmware revision 135 type: string 136 hardwareSectorSize: 137 description: HardwareSectorSize is the hardware sector size in bytes 138 format: int32 139 type: integer 140 logicalBlockSize: 141 description: LogicalBlockSize is the logical block size in bytes reported by /sys/class/block/sda/queue/logical_block_size 142 format: int32 143 type: integer 144 model: 145 description: Model is model of disk 146 type: string 147 physicalBlockSize: 148 description: PhysicalBlockSize is the physical block size in bytes reported by /sys/class/block/sda/queue/physical_block_size 149 format: int32 150 type: integer 151 serial: 152 description: Serial is serial number of disk 153 type: string 154 vendor: 155 description: Vendor is vendor of disk 156 type: string 157 type: object 158 devlinks: 159 description: DevLinks contains soft links of a block device like /dev/by-id/... /dev/by-uuid/... 160 items: 161 description: DeviceDevLink holds the mapping between type and links like by-id type or by-path type link 162 properties: 163 kind: 164 description: Kind is the type of link like by-id or by-path. 165 enum: 166 - by-id 167 - by-path 168 type: string 169 links: 170 description: Links are the soft links 171 items: 172 type: string 173 type: array 174 type: object 175 type: array 176 filesystem: 177 description: FileSystem contains mountpoint and filesystem type 178 properties: 179 fsType: 180 description: Type represents the FileSystem type of the block device 181 type: string 182 mountPoint: 183 description: MountPoint represents the mountpoint of the block device. 184 type: string 185 type: object 186 nodeAttributes: 187 description: NodeAttributes has the details of the node on which BD is attached 188 properties: 189 nodeName: 190 description: NodeName is the name of the Kubernetes node resource on which the device is attached 191 type: string 192 type: object 193 parentDevice: 194 description: "ParentDevice was intended to store the UUID of the parent Block Device as is the case for partitioned block devices. \n For example: /dev/sda is the parent for /dev/sda1 To be deprecated" 195 type: string 196 partitioned: 197 description: Partitioned represents if BlockDevice has partitions or not (Yes/No) Currently always default to No. To be deprecated 198 enum: 199 - "Yes" 200 - "No" 201 type: string 202 path: 203 description: Path contain devpath (e.g. /dev/sdb) 204 type: string 205 required: 206 - capacity 207 - devlinks 208 - nodeAttributes 209 - path 210 type: object 211 status: 212 description: DeviceStatus defines the observed state of BlockDevice 213 properties: 214 claimState: 215 description: ClaimState represents the claim state of the block device 216 enum: 217 - Claimed 218 - Unclaimed 219 - Released 220 type: string 221 state: 222 description: State is the current state of the blockdevice (Active/Inactive/Unknown) 223 enum: 224 - Active 225 - Inactive 226 - Unknown 227 type: string 228 required: 229 - claimState 230 - state 231 type: object 232 type: object 233 served: true 234 storage: true 235 subresources: {} 236 status: 237 acceptedNames: 238 kind: "" 239 plural: "" 240 conditions: [] 241 storedVersions: []