| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 1 | apiVersion: apiextensions.k8s.io/v1 |
| 2 | kind: CustomResourceDefinition |
| 3 | metadata: |
| 4 | annotations: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 5 | controller-gen.kubebuilder.io/version: v0.15.0 |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 6 | labels: {{- include "longhorn.labels" . | nindent 4 }} |
| 7 | longhorn-manager: "" |
| 8 | name: backingimagedatasources.longhorn.io |
| 9 | spec: |
| 10 | group: longhorn.io |
| 11 | names: |
| 12 | kind: BackingImageDataSource |
| 13 | listKind: BackingImageDataSourceList |
| 14 | plural: backingimagedatasources |
| 15 | shortNames: |
| 16 | - lhbids |
| 17 | singular: backingimagedatasource |
| 18 | scope: Namespaced |
| 19 | versions: |
| 20 | - additionalPrinterColumns: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 21 | - description: The current state of the pod used to provision the backing image |
| 22 | file from source |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 23 | jsonPath: .status.currentState |
| 24 | name: State |
| 25 | type: string |
| 26 | - description: The data source type |
| 27 | jsonPath: .spec.sourceType |
| 28 | name: SourceType |
| 29 | type: string |
| 30 | - description: The node the backing image file will be prepared on |
| 31 | jsonPath: .spec.nodeID |
| 32 | name: Node |
| 33 | type: string |
| 34 | - description: The disk the backing image file will be prepared on |
| 35 | jsonPath: .spec.diskUUID |
| 36 | name: DiskUUID |
| 37 | type: string |
| 38 | - jsonPath: .metadata.creationTimestamp |
| 39 | name: Age |
| 40 | type: date |
| 41 | name: v1beta1 |
| 42 | schema: |
| 43 | openAPIV3Schema: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 44 | description: BackingImageDataSource is where Longhorn stores backing image |
| 45 | data source object. |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 46 | properties: |
| 47 | apiVersion: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 48 | description: |- |
| 49 | APIVersion defines the versioned schema of this representation of an object. |
| 50 | Servers should convert recognized schemas to the latest internal value, and |
| 51 | may reject unrecognized values. |
| 52 | More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 53 | type: string |
| 54 | kind: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 55 | description: |- |
| 56 | Kind is a string value representing the REST resource this object represents. |
| 57 | Servers may infer this from the endpoint the client submits requests to. |
| 58 | Cannot be updated. |
| 59 | In CamelCase. |
| 60 | More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 61 | type: string |
| 62 | metadata: |
| 63 | type: object |
| 64 | spec: |
| 65 | x-kubernetes-preserve-unknown-fields: true |
| 66 | status: |
| 67 | x-kubernetes-preserve-unknown-fields: true |
| 68 | type: object |
| 69 | served: true |
| 70 | storage: false |
| 71 | subresources: |
| 72 | status: {} |
| 73 | - additionalPrinterColumns: |
| 74 | - description: The system generated UUID of the provisioned backing image file |
| 75 | jsonPath: .spec.uuid |
| 76 | name: UUID |
| 77 | type: string |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 78 | - description: The current state of the pod used to provision the backing image |
| 79 | file from source |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 80 | jsonPath: .status.currentState |
| 81 | name: State |
| 82 | type: string |
| 83 | - description: The data source type |
| 84 | jsonPath: .spec.sourceType |
| 85 | name: SourceType |
| 86 | type: string |
| 87 | - description: The backing image file size |
| 88 | jsonPath: .status.size |
| 89 | name: Size |
| 90 | type: string |
| 91 | - description: The node the backing image file will be prepared on |
| 92 | jsonPath: .spec.nodeID |
| 93 | name: Node |
| 94 | type: string |
| 95 | - description: The disk the backing image file will be prepared on |
| 96 | jsonPath: .spec.diskUUID |
| 97 | name: DiskUUID |
| 98 | type: string |
| 99 | - jsonPath: .metadata.creationTimestamp |
| 100 | name: Age |
| 101 | type: date |
| 102 | name: v1beta2 |
| 103 | schema: |
| 104 | openAPIV3Schema: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 105 | description: BackingImageDataSource is where Longhorn stores backing image |
| 106 | data source object. |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 107 | properties: |
| 108 | apiVersion: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 109 | description: |- |
| 110 | APIVersion defines the versioned schema of this representation of an object. |
| 111 | Servers should convert recognized schemas to the latest internal value, and |
| 112 | may reject unrecognized values. |
| 113 | More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 114 | type: string |
| 115 | kind: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 116 | description: |- |
| 117 | Kind is a string value representing the REST resource this object represents. |
| 118 | Servers may infer this from the endpoint the client submits requests to. |
| 119 | Cannot be updated. |
| 120 | In CamelCase. |
| 121 | More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 122 | type: string |
| 123 | metadata: |
| 124 | type: object |
| 125 | spec: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 126 | description: BackingImageDataSourceSpec defines the desired state of the |
| 127 | Longhorn backing image data source |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 128 | properties: |
| 129 | checksum: |
| 130 | type: string |
| 131 | diskPath: |
| 132 | type: string |
| 133 | diskUUID: |
| 134 | type: string |
| 135 | fileTransferred: |
| 136 | type: boolean |
| 137 | nodeID: |
| 138 | type: string |
| 139 | parameters: |
| 140 | additionalProperties: |
| 141 | type: string |
| 142 | type: object |
| 143 | sourceType: |
| 144 | enum: |
| 145 | - download |
| 146 | - upload |
| 147 | - export-from-volume |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 148 | - restore |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 149 | - clone |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 150 | type: string |
| 151 | uuid: |
| 152 | type: string |
| 153 | type: object |
| 154 | status: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 155 | description: BackingImageDataSourceStatus defines the observed state of |
| 156 | the Longhorn backing image data source |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 157 | properties: |
| 158 | checksum: |
| 159 | type: string |
| 160 | currentState: |
| 161 | type: string |
| 162 | ip: |
| 163 | type: string |
| 164 | message: |
| 165 | type: string |
| 166 | ownerID: |
| 167 | type: string |
| 168 | progress: |
| 169 | type: integer |
| 170 | runningParameters: |
| 171 | additionalProperties: |
| 172 | type: string |
| 173 | nullable: true |
| 174 | type: object |
| 175 | size: |
| 176 | format: int64 |
| 177 | type: integer |
| 178 | storageIP: |
| 179 | type: string |
| 180 | type: object |
| 181 | type: object |
| 182 | served: true |
| 183 | storage: true |
| 184 | subresources: |
| 185 | status: {} |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 186 | --- |
| 187 | apiVersion: apiextensions.k8s.io/v1 |
| 188 | kind: CustomResourceDefinition |
| 189 | metadata: |
| 190 | annotations: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 191 | controller-gen.kubebuilder.io/version: v0.15.0 |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 192 | labels: {{- include "longhorn.labels" . | nindent 4 }} |
| 193 | longhorn-manager: "" |
| 194 | name: backingimagemanagers.longhorn.io |
| 195 | spec: |
| 196 | group: longhorn.io |
| 197 | names: |
| 198 | kind: BackingImageManager |
| 199 | listKind: BackingImageManagerList |
| 200 | plural: backingimagemanagers |
| 201 | shortNames: |
| 202 | - lhbim |
| 203 | singular: backingimagemanager |
| 204 | scope: Namespaced |
| 205 | versions: |
| 206 | - additionalPrinterColumns: |
| 207 | - description: The current state of the manager |
| 208 | jsonPath: .status.currentState |
| 209 | name: State |
| 210 | type: string |
| 211 | - description: The image the manager pod will use |
| 212 | jsonPath: .spec.image |
| 213 | name: Image |
| 214 | type: string |
| 215 | - description: The node the manager is on |
| 216 | jsonPath: .spec.nodeID |
| 217 | name: Node |
| 218 | type: string |
| 219 | - description: The disk the manager is responsible for |
| 220 | jsonPath: .spec.diskUUID |
| 221 | name: DiskUUID |
| 222 | type: string |
| 223 | - description: The disk path the manager is using |
| 224 | jsonPath: .spec.diskPath |
| 225 | name: DiskPath |
| 226 | type: string |
| 227 | - jsonPath: .metadata.creationTimestamp |
| 228 | name: Age |
| 229 | type: date |
| 230 | name: v1beta1 |
| 231 | schema: |
| 232 | openAPIV3Schema: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 233 | description: BackingImageManager is where Longhorn stores backing image manager |
| 234 | object. |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 235 | properties: |
| 236 | apiVersion: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 237 | description: |- |
| 238 | APIVersion defines the versioned schema of this representation of an object. |
| 239 | Servers should convert recognized schemas to the latest internal value, and |
| 240 | may reject unrecognized values. |
| 241 | More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 242 | type: string |
| 243 | kind: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 244 | description: |- |
| 245 | Kind is a string value representing the REST resource this object represents. |
| 246 | Servers may infer this from the endpoint the client submits requests to. |
| 247 | Cannot be updated. |
| 248 | In CamelCase. |
| 249 | More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 250 | type: string |
| 251 | metadata: |
| 252 | type: object |
| 253 | spec: |
| 254 | x-kubernetes-preserve-unknown-fields: true |
| 255 | status: |
| 256 | x-kubernetes-preserve-unknown-fields: true |
| 257 | type: object |
| 258 | served: true |
| 259 | storage: false |
| 260 | subresources: |
| 261 | status: {} |
| 262 | - additionalPrinterColumns: |
| 263 | - description: The current state of the manager |
| 264 | jsonPath: .status.currentState |
| 265 | name: State |
| 266 | type: string |
| 267 | - description: The image the manager pod will use |
| 268 | jsonPath: .spec.image |
| 269 | name: Image |
| 270 | type: string |
| 271 | - description: The node the manager is on |
| 272 | jsonPath: .spec.nodeID |
| 273 | name: Node |
| 274 | type: string |
| 275 | - description: The disk the manager is responsible for |
| 276 | jsonPath: .spec.diskUUID |
| 277 | name: DiskUUID |
| 278 | type: string |
| 279 | - description: The disk path the manager is using |
| 280 | jsonPath: .spec.diskPath |
| 281 | name: DiskPath |
| 282 | type: string |
| 283 | - jsonPath: .metadata.creationTimestamp |
| 284 | name: Age |
| 285 | type: date |
| 286 | name: v1beta2 |
| 287 | schema: |
| 288 | openAPIV3Schema: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 289 | description: BackingImageManager is where Longhorn stores backing image manager |
| 290 | object. |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 291 | properties: |
| 292 | apiVersion: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 293 | description: |- |
| 294 | APIVersion defines the versioned schema of this representation of an object. |
| 295 | Servers should convert recognized schemas to the latest internal value, and |
| 296 | may reject unrecognized values. |
| 297 | More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 298 | type: string |
| 299 | kind: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 300 | description: |- |
| 301 | Kind is a string value representing the REST resource this object represents. |
| 302 | Servers may infer this from the endpoint the client submits requests to. |
| 303 | Cannot be updated. |
| 304 | In CamelCase. |
| 305 | More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 306 | type: string |
| 307 | metadata: |
| 308 | type: object |
| 309 | spec: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 310 | description: BackingImageManagerSpec defines the desired state of the |
| 311 | Longhorn backing image manager |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 312 | properties: |
| 313 | backingImages: |
| 314 | additionalProperties: |
| 315 | type: string |
| 316 | type: object |
| 317 | diskPath: |
| 318 | type: string |
| 319 | diskUUID: |
| 320 | type: string |
| 321 | image: |
| 322 | type: string |
| 323 | nodeID: |
| 324 | type: string |
| 325 | type: object |
| 326 | status: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 327 | description: BackingImageManagerStatus defines the observed state of the |
| 328 | Longhorn backing image manager |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 329 | properties: |
| 330 | apiMinVersion: |
| 331 | type: integer |
| 332 | apiVersion: |
| 333 | type: integer |
| 334 | backingImageFileMap: |
| 335 | additionalProperties: |
| 336 | properties: |
| 337 | currentChecksum: |
| 338 | type: string |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 339 | message: |
| 340 | type: string |
| 341 | name: |
| 342 | type: string |
| 343 | progress: |
| 344 | type: integer |
| gio | 2539d9e | 2025-05-22 12:19:30 +0400 | [diff] [blame^] | 345 | realSize: |
| 346 | format: int64 |
| 347 | type: integer |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 348 | senderManagerAddress: |
| 349 | type: string |
| 350 | sendingReference: |
| 351 | type: integer |
| 352 | size: |
| 353 | format: int64 |
| 354 | type: integer |
| 355 | state: |
| 356 | type: string |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 357 | uuid: |
| 358 | type: string |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 359 | virtualSize: |
| 360 | format: int64 |
| 361 | type: integer |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 362 | type: object |
| 363 | nullable: true |
| 364 | type: object |
| 365 | currentState: |
| 366 | type: string |
| 367 | ip: |
| 368 | type: string |
| 369 | ownerID: |
| 370 | type: string |
| 371 | storageIP: |
| 372 | type: string |
| 373 | type: object |
| 374 | type: object |
| 375 | served: true |
| 376 | storage: true |
| 377 | subresources: |
| 378 | status: {} |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 379 | --- |
| 380 | apiVersion: apiextensions.k8s.io/v1 |
| 381 | kind: CustomResourceDefinition |
| 382 | metadata: |
| 383 | annotations: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 384 | controller-gen.kubebuilder.io/version: v0.15.0 |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 385 | labels: {{- include "longhorn.labels" . | nindent 4 }} |
| 386 | longhorn-manager: "" |
| 387 | name: backingimages.longhorn.io |
| 388 | spec: |
| 389 | conversion: |
| 390 | strategy: Webhook |
| 391 | webhook: |
| 392 | clientConfig: |
| 393 | service: |
| 394 | name: longhorn-conversion-webhook |
| 395 | namespace: {{ include "release_namespace" . }} |
| 396 | path: /v1/webhook/conversion |
| Giorgi Lekveishvili | 285ab62 | 2023-11-22 13:50:45 +0400 | [diff] [blame] | 397 | port: 9501 |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 398 | conversionReviewVersions: |
| 399 | - v1beta2 |
| 400 | - v1beta1 |
| 401 | group: longhorn.io |
| 402 | names: |
| 403 | kind: BackingImage |
| 404 | listKind: BackingImageList |
| 405 | plural: backingimages |
| 406 | shortNames: |
| 407 | - lhbi |
| 408 | singular: backingimage |
| 409 | scope: Namespaced |
| 410 | versions: |
| 411 | - additionalPrinterColumns: |
| 412 | - description: The backing image name |
| 413 | jsonPath: .spec.image |
| 414 | name: Image |
| 415 | type: string |
| 416 | - jsonPath: .metadata.creationTimestamp |
| 417 | name: Age |
| 418 | type: date |
| 419 | name: v1beta1 |
| 420 | schema: |
| 421 | openAPIV3Schema: |
| 422 | description: BackingImage is where Longhorn stores backing image object. |
| 423 | properties: |
| 424 | apiVersion: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 425 | description: |- |
| 426 | APIVersion defines the versioned schema of this representation of an object. |
| 427 | Servers should convert recognized schemas to the latest internal value, and |
| 428 | may reject unrecognized values. |
| 429 | More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 430 | type: string |
| 431 | kind: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 432 | description: |- |
| 433 | Kind is a string value representing the REST resource this object represents. |
| 434 | Servers may infer this from the endpoint the client submits requests to. |
| 435 | Cannot be updated. |
| 436 | In CamelCase. |
| 437 | More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 438 | type: string |
| 439 | metadata: |
| 440 | type: object |
| 441 | spec: |
| 442 | x-kubernetes-preserve-unknown-fields: true |
| 443 | status: |
| 444 | x-kubernetes-preserve-unknown-fields: true |
| 445 | type: object |
| 446 | served: true |
| 447 | storage: false |
| 448 | subresources: |
| 449 | status: {} |
| 450 | - additionalPrinterColumns: |
| 451 | - description: The system generated UUID |
| 452 | jsonPath: .status.uuid |
| 453 | name: UUID |
| 454 | type: string |
| 455 | - description: The source of the backing image file data |
| 456 | jsonPath: .spec.sourceType |
| 457 | name: SourceType |
| 458 | type: string |
| 459 | - description: The backing image file size in each disk |
| 460 | jsonPath: .status.size |
| 461 | name: Size |
| 462 | type: string |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 463 | - description: The virtual size of the image (may be larger than file size) |
| 464 | jsonPath: .status.virtualSize |
| 465 | name: VirtualSize |
| 466 | type: string |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 467 | - jsonPath: .metadata.creationTimestamp |
| 468 | name: Age |
| 469 | type: date |
| 470 | name: v1beta2 |
| 471 | schema: |
| 472 | openAPIV3Schema: |
| 473 | description: BackingImage is where Longhorn stores backing image object. |
| 474 | properties: |
| 475 | apiVersion: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 476 | description: |- |
| 477 | APIVersion defines the versioned schema of this representation of an object. |
| 478 | Servers should convert recognized schemas to the latest internal value, and |
| 479 | may reject unrecognized values. |
| 480 | More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 481 | type: string |
| 482 | kind: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 483 | description: |- |
| 484 | Kind is a string value representing the REST resource this object represents. |
| 485 | Servers may infer this from the endpoint the client submits requests to. |
| 486 | Cannot be updated. |
| 487 | In CamelCase. |
| 488 | More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 489 | type: string |
| 490 | metadata: |
| 491 | type: object |
| 492 | spec: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 493 | description: BackingImageSpec defines the desired state of the Longhorn |
| 494 | backing image |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 495 | properties: |
| 496 | checksum: |
| 497 | type: string |
| gio | 2539d9e | 2025-05-22 12:19:30 +0400 | [diff] [blame^] | 498 | dataEngine: |
| 499 | default: v1 |
| 500 | enum: |
| 501 | - v1 |
| 502 | - v2 |
| 503 | type: string |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 504 | diskFileSpecMap: |
| 505 | additionalProperties: |
| 506 | properties: |
| gio | 2539d9e | 2025-05-22 12:19:30 +0400 | [diff] [blame^] | 507 | dataEngine: |
| 508 | enum: |
| 509 | - v1 |
| 510 | - v2 |
| 511 | type: string |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 512 | evictionRequested: |
| 513 | type: boolean |
| 514 | type: object |
| 515 | type: object |
| 516 | diskSelector: |
| 517 | items: |
| 518 | type: string |
| 519 | type: array |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 520 | disks: |
| 521 | additionalProperties: |
| 522 | type: string |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 523 | description: Deprecated. We are now using DiskFileSpecMap to assign |
| 524 | different spec to the file on different disks. |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 525 | type: object |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 526 | minNumberOfCopies: |
| 527 | type: integer |
| 528 | nodeSelector: |
| 529 | items: |
| 530 | type: string |
| 531 | type: array |
| 532 | secret: |
| 533 | type: string |
| 534 | secretNamespace: |
| 535 | type: string |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 536 | sourceParameters: |
| 537 | additionalProperties: |
| 538 | type: string |
| 539 | type: object |
| 540 | sourceType: |
| 541 | enum: |
| 542 | - download |
| 543 | - upload |
| 544 | - export-from-volume |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 545 | - restore |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 546 | - clone |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 547 | type: string |
| 548 | type: object |
| 549 | status: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 550 | description: BackingImageStatus defines the observed state of the Longhorn |
| 551 | backing image status |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 552 | properties: |
| 553 | checksum: |
| 554 | type: string |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 555 | diskFileStatusMap: |
| 556 | additionalProperties: |
| 557 | properties: |
| gio | 2539d9e | 2025-05-22 12:19:30 +0400 | [diff] [blame^] | 558 | dataEngine: |
| 559 | enum: |
| 560 | - v1 |
| 561 | - v2 |
| 562 | type: string |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 563 | lastStateTransitionTime: |
| 564 | type: string |
| 565 | message: |
| 566 | type: string |
| 567 | progress: |
| 568 | type: integer |
| 569 | state: |
| 570 | type: string |
| 571 | type: object |
| 572 | nullable: true |
| 573 | type: object |
| 574 | diskLastRefAtMap: |
| 575 | additionalProperties: |
| 576 | type: string |
| 577 | nullable: true |
| 578 | type: object |
| 579 | ownerID: |
| 580 | type: string |
| gio | 2539d9e | 2025-05-22 12:19:30 +0400 | [diff] [blame^] | 581 | realSize: |
| 582 | description: Real size of image in bytes, which may be smaller than |
| 583 | the size when the file is a sparse file. Will be zero until known |
| 584 | (e.g. while a backing image is uploading) |
| 585 | format: int64 |
| 586 | type: integer |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 587 | size: |
| 588 | format: int64 |
| 589 | type: integer |
| 590 | uuid: |
| 591 | type: string |
| gio | 2539d9e | 2025-05-22 12:19:30 +0400 | [diff] [blame^] | 592 | v2FirstCopyDisk: |
| 593 | type: string |
| 594 | v2FirstCopyStatus: |
| 595 | description: It is pending -> in-progress -> ready/failed |
| 596 | type: string |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 597 | virtualSize: |
| gio | 2539d9e | 2025-05-22 12:19:30 +0400 | [diff] [blame^] | 598 | description: Virtual size of image in bytes, which may be larger than |
| 599 | physical size. Will be zero until known (e.g. while a backing image |
| 600 | is uploading) |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 601 | format: int64 |
| 602 | type: integer |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 603 | type: object |
| 604 | type: object |
| 605 | served: true |
| 606 | storage: true |
| 607 | subresources: |
| 608 | status: {} |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 609 | --- |
| 610 | apiVersion: apiextensions.k8s.io/v1 |
| 611 | kind: CustomResourceDefinition |
| 612 | metadata: |
| 613 | annotations: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 614 | controller-gen.kubebuilder.io/version: v0.15.0 |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 615 | labels: {{- include "longhorn.labels" . | nindent 4 }} |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 616 | longhorn-manager: "" |
| 617 | name: backupbackingimages.longhorn.io |
| 618 | spec: |
| 619 | group: longhorn.io |
| 620 | names: |
| 621 | kind: BackupBackingImage |
| 622 | listKind: BackupBackingImageList |
| 623 | plural: backupbackingimages |
| 624 | shortNames: |
| 625 | - lhbbi |
| 626 | singular: backupbackingimage |
| 627 | scope: Namespaced |
| 628 | versions: |
| 629 | - additionalPrinterColumns: |
| 630 | - description: The backing image name |
| 631 | jsonPath: .status.backingImage |
| 632 | name: BackingImage |
| 633 | type: string |
| 634 | - description: The backing image size |
| 635 | jsonPath: .status.size |
| 636 | name: Size |
| 637 | type: string |
| 638 | - description: The backing image backup upload finished time |
| 639 | jsonPath: .status.backupCreatedAt |
| 640 | name: BackupCreatedAt |
| 641 | type: string |
| 642 | - description: The backing image backup state |
| 643 | jsonPath: .status.state |
| 644 | name: State |
| 645 | type: string |
| 646 | - description: The last synced time |
| 647 | jsonPath: .status.lastSyncedAt |
| 648 | name: LastSyncedAt |
| 649 | type: string |
| 650 | name: v1beta2 |
| 651 | schema: |
| 652 | openAPIV3Schema: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 653 | description: BackupBackingImage is where Longhorn stores backing image backup |
| 654 | object. |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 655 | properties: |
| 656 | apiVersion: |
| 657 | description: |- |
| 658 | APIVersion defines the versioned schema of this representation of an object. |
| 659 | Servers should convert recognized schemas to the latest internal value, and |
| 660 | may reject unrecognized values. |
| 661 | More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
| 662 | type: string |
| 663 | kind: |
| 664 | description: |- |
| 665 | Kind is a string value representing the REST resource this object represents. |
| 666 | Servers may infer this from the endpoint the client submits requests to. |
| 667 | Cannot be updated. |
| 668 | In CamelCase. |
| 669 | More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
| 670 | type: string |
| 671 | metadata: |
| 672 | type: object |
| 673 | spec: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 674 | description: BackupBackingImageSpec defines the desired state of the Longhorn |
| 675 | backing image backup |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 676 | properties: |
| gio | 2539d9e | 2025-05-22 12:19:30 +0400 | [diff] [blame^] | 677 | backingImage: |
| 678 | description: |- |
| 679 | The backing image name. |
| 680 | type: string |
| 681 | backupTargetName: |
| 682 | description: The backup target name. |
| 683 | nullable: true |
| 684 | type: string |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 685 | labels: |
| 686 | additionalProperties: |
| 687 | type: string |
| 688 | description: The labels of backing image backup. |
| 689 | type: object |
| 690 | syncRequestedAt: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 691 | description: The time to request run sync the remote backing image |
| 692 | backup. |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 693 | format: date-time |
| 694 | nullable: true |
| 695 | type: string |
| 696 | userCreated: |
| 697 | description: |- |
| 698 | Is this CR created by user through API or UI. |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 699 | type: boolean |
| 700 | required: |
| gio | 2539d9e | 2025-05-22 12:19:30 +0400 | [diff] [blame^] | 701 | - backingImage |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 702 | - userCreated |
| 703 | type: object |
| 704 | status: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 705 | description: BackupBackingImageStatus defines the observed state of the |
| 706 | Longhorn backing image backup |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 707 | properties: |
| 708 | backingImage: |
| 709 | description: The backing image name. |
| 710 | type: string |
| 711 | backupCreatedAt: |
| 712 | description: The backing image backup upload finished time. |
| 713 | type: string |
| 714 | checksum: |
| 715 | description: The checksum of the backing image. |
| 716 | type: string |
| 717 | compressionMethod: |
| 718 | description: Compression method |
| 719 | type: string |
| 720 | error: |
| 721 | description: The error message when taking the backing image backup. |
| 722 | type: string |
| 723 | labels: |
| 724 | additionalProperties: |
| 725 | type: string |
| 726 | description: The labels of backing image backup. |
| 727 | nullable: true |
| 728 | type: object |
| 729 | lastSyncedAt: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 730 | description: The last time that the backing image backup was synced |
| 731 | with the remote backup target. |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 732 | format: date-time |
| 733 | nullable: true |
| 734 | type: string |
| 735 | managerAddress: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 736 | description: The address of the backing image manager that runs backing |
| 737 | image backup. |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 738 | type: string |
| 739 | messages: |
| 740 | additionalProperties: |
| 741 | type: string |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 742 | description: The error messages when listing or inspecting backing |
| 743 | image backup. |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 744 | nullable: true |
| 745 | type: object |
| 746 | ownerID: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 747 | description: The node ID on which the controller is responsible to |
| 748 | reconcile this CR. |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 749 | type: string |
| 750 | progress: |
| 751 | description: The backing image backup progress. |
| 752 | type: integer |
| gio | 2539d9e | 2025-05-22 12:19:30 +0400 | [diff] [blame^] | 753 | secret: |
| 754 | description: Record the secret if this backup backing image is encrypted |
| 755 | type: string |
| 756 | secretNamespace: |
| 757 | description: Record the secret namespace if this backup backing image |
| 758 | is encrypted |
| 759 | type: string |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 760 | size: |
| 761 | description: The backing image size. |
| 762 | format: int64 |
| 763 | type: integer |
| 764 | state: |
| 765 | description: |- |
| 766 | The backing image backup creation state. |
| 767 | Can be "", "InProgress", "Completed", "Error", "Unknown". |
| 768 | type: string |
| 769 | url: |
| 770 | description: The backing image backup URL. |
| 771 | type: string |
| 772 | type: object |
| 773 | type: object |
| 774 | served: true |
| 775 | storage: true |
| 776 | subresources: |
| 777 | status: {} |
| 778 | --- |
| 779 | apiVersion: apiextensions.k8s.io/v1 |
| 780 | kind: CustomResourceDefinition |
| 781 | metadata: |
| 782 | annotations: |
| 783 | controller-gen.kubebuilder.io/version: v0.15.0 |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 784 | labels: {{- include "longhorn.labels" . | nindent 4 }} |
| 785 | longhorn-manager: "" |
| 786 | name: backups.longhorn.io |
| 787 | spec: |
| 788 | group: longhorn.io |
| 789 | names: |
| 790 | kind: Backup |
| 791 | listKind: BackupList |
| 792 | plural: backups |
| 793 | shortNames: |
| 794 | - lhb |
| 795 | singular: backup |
| 796 | scope: Namespaced |
| 797 | versions: |
| 798 | - additionalPrinterColumns: |
| 799 | - description: The snapshot name |
| 800 | jsonPath: .status.snapshotName |
| 801 | name: SnapshotName |
| 802 | type: string |
| 803 | - description: The snapshot size |
| 804 | jsonPath: .status.size |
| 805 | name: SnapshotSize |
| 806 | type: string |
| 807 | - description: The snapshot creation time |
| 808 | jsonPath: .status.snapshotCreatedAt |
| 809 | name: SnapshotCreatedAt |
| 810 | type: string |
| 811 | - description: The backup state |
| 812 | jsonPath: .status.state |
| 813 | name: State |
| 814 | type: string |
| 815 | - description: The backup last synced time |
| 816 | jsonPath: .status.lastSyncedAt |
| 817 | name: LastSyncedAt |
| 818 | type: string |
| 819 | name: v1beta1 |
| 820 | schema: |
| 821 | openAPIV3Schema: |
| 822 | description: Backup is where Longhorn stores backup object. |
| 823 | properties: |
| 824 | apiVersion: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 825 | description: |- |
| 826 | APIVersion defines the versioned schema of this representation of an object. |
| 827 | Servers should convert recognized schemas to the latest internal value, and |
| 828 | may reject unrecognized values. |
| 829 | More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 830 | type: string |
| 831 | kind: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 832 | description: |- |
| 833 | Kind is a string value representing the REST resource this object represents. |
| 834 | Servers may infer this from the endpoint the client submits requests to. |
| 835 | Cannot be updated. |
| 836 | In CamelCase. |
| 837 | More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 838 | type: string |
| 839 | metadata: |
| 840 | type: object |
| 841 | spec: |
| 842 | x-kubernetes-preserve-unknown-fields: true |
| 843 | status: |
| 844 | x-kubernetes-preserve-unknown-fields: true |
| 845 | type: object |
| 846 | served: true |
| 847 | storage: false |
| 848 | subresources: |
| 849 | status: {} |
| 850 | - additionalPrinterColumns: |
| 851 | - description: The snapshot name |
| 852 | jsonPath: .status.snapshotName |
| 853 | name: SnapshotName |
| 854 | type: string |
| 855 | - description: The snapshot size |
| 856 | jsonPath: .status.size |
| 857 | name: SnapshotSize |
| 858 | type: string |
| 859 | - description: The snapshot creation time |
| 860 | jsonPath: .status.snapshotCreatedAt |
| 861 | name: SnapshotCreatedAt |
| 862 | type: string |
| gio | 2539d9e | 2025-05-22 12:19:30 +0400 | [diff] [blame^] | 863 | - description: The backup target name |
| 864 | jsonPath: .status.backupTargetName |
| 865 | name: BackupTarget |
| 866 | type: string |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 867 | - description: The backup state |
| 868 | jsonPath: .status.state |
| 869 | name: State |
| 870 | type: string |
| 871 | - description: The backup last synced time |
| 872 | jsonPath: .status.lastSyncedAt |
| 873 | name: LastSyncedAt |
| 874 | type: string |
| 875 | name: v1beta2 |
| 876 | schema: |
| 877 | openAPIV3Schema: |
| 878 | description: Backup is where Longhorn stores backup object. |
| 879 | properties: |
| 880 | apiVersion: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 881 | description: |- |
| 882 | APIVersion defines the versioned schema of this representation of an object. |
| 883 | Servers should convert recognized schemas to the latest internal value, and |
| 884 | may reject unrecognized values. |
| 885 | More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 886 | type: string |
| 887 | kind: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 888 | description: |- |
| 889 | Kind is a string value representing the REST resource this object represents. |
| 890 | Servers may infer this from the endpoint the client submits requests to. |
| 891 | Cannot be updated. |
| 892 | In CamelCase. |
| 893 | More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 894 | type: string |
| 895 | metadata: |
| 896 | type: object |
| 897 | spec: |
| 898 | description: BackupSpec defines the desired state of the Longhorn backup |
| 899 | properties: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 900 | backupMode: |
| 901 | description: |- |
| 902 | The backup mode of this backup. |
| 903 | Can be "full" or "incremental" |
| 904 | enum: |
| 905 | - full |
| 906 | - incremental |
| 907 | - "" |
| 908 | type: string |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 909 | labels: |
| 910 | additionalProperties: |
| 911 | type: string |
| 912 | description: The labels of snapshot backup. |
| 913 | type: object |
| 914 | snapshotName: |
| 915 | description: The snapshot name. |
| 916 | type: string |
| 917 | syncRequestedAt: |
| 918 | description: The time to request run sync the remote backup. |
| 919 | format: date-time |
| 920 | nullable: true |
| 921 | type: string |
| 922 | type: object |
| 923 | status: |
| 924 | description: BackupStatus defines the observed state of the Longhorn backup |
| 925 | properties: |
| 926 | backupCreatedAt: |
| 927 | description: The snapshot backup upload finished time. |
| 928 | type: string |
| gio | 2539d9e | 2025-05-22 12:19:30 +0400 | [diff] [blame^] | 929 | backupTargetName: |
| 930 | description: The backup target name. |
| 931 | type: string |
| Giorgi Lekveishvili | 285ab62 | 2023-11-22 13:50:45 +0400 | [diff] [blame] | 932 | compressionMethod: |
| 933 | description: Compression method |
| 934 | type: string |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 935 | error: |
| 936 | description: The error message when taking the snapshot backup. |
| 937 | type: string |
| 938 | labels: |
| 939 | additionalProperties: |
| 940 | type: string |
| 941 | description: The labels of snapshot backup. |
| 942 | nullable: true |
| 943 | type: object |
| 944 | lastSyncedAt: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 945 | description: The last time that the backup was synced with the remote |
| 946 | backup target. |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 947 | format: date-time |
| 948 | nullable: true |
| 949 | type: string |
| 950 | messages: |
| 951 | additionalProperties: |
| 952 | type: string |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 953 | description: The error messages when calling longhorn engine on listing |
| 954 | or inspecting backups. |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 955 | nullable: true |
| 956 | type: object |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 957 | newlyUploadDataSize: |
| 958 | description: Size in bytes of newly uploaded data |
| 959 | type: string |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 960 | ownerID: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 961 | description: The node ID on which the controller is responsible to |
| 962 | reconcile this backup CR. |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 963 | type: string |
| 964 | progress: |
| 965 | description: The snapshot backup progress. |
| 966 | type: integer |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 967 | reUploadedDataSize: |
| 968 | description: Size in bytes of reuploaded data |
| 969 | type: string |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 970 | replicaAddress: |
| 971 | description: The address of the replica that runs snapshot backup. |
| 972 | type: string |
| 973 | size: |
| 974 | description: The snapshot size. |
| 975 | type: string |
| 976 | snapshotCreatedAt: |
| 977 | description: The snapshot creation time. |
| 978 | type: string |
| 979 | snapshotName: |
| 980 | description: The snapshot name. |
| 981 | type: string |
| 982 | state: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 983 | description: |- |
| 984 | The backup creation state. |
| 985 | Can be "", "InProgress", "Completed", "Error", "Unknown". |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 986 | type: string |
| 987 | url: |
| 988 | description: The snapshot backup URL. |
| 989 | type: string |
| 990 | volumeBackingImageName: |
| 991 | description: The volume's backing image name. |
| 992 | type: string |
| 993 | volumeCreated: |
| 994 | description: The volume creation time. |
| 995 | type: string |
| 996 | volumeName: |
| 997 | description: The volume name. |
| 998 | type: string |
| 999 | volumeSize: |
| 1000 | description: The volume size. |
| 1001 | type: string |
| 1002 | type: object |
| 1003 | type: object |
| 1004 | served: true |
| 1005 | storage: true |
| 1006 | subresources: |
| 1007 | status: {} |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 1008 | --- |
| 1009 | apiVersion: apiextensions.k8s.io/v1 |
| 1010 | kind: CustomResourceDefinition |
| 1011 | metadata: |
| 1012 | annotations: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 1013 | controller-gen.kubebuilder.io/version: v0.15.0 |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 1014 | labels: {{- include "longhorn.labels" . | nindent 4 }} |
| 1015 | longhorn-manager: "" |
| 1016 | name: backuptargets.longhorn.io |
| 1017 | spec: |
| 1018 | conversion: |
| 1019 | strategy: Webhook |
| 1020 | webhook: |
| 1021 | clientConfig: |
| 1022 | service: |
| 1023 | name: longhorn-conversion-webhook |
| 1024 | namespace: {{ include "release_namespace" . }} |
| 1025 | path: /v1/webhook/conversion |
| Giorgi Lekveishvili | 285ab62 | 2023-11-22 13:50:45 +0400 | [diff] [blame] | 1026 | port: 9501 |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 1027 | conversionReviewVersions: |
| 1028 | - v1beta2 |
| 1029 | - v1beta1 |
| 1030 | group: longhorn.io |
| 1031 | names: |
| 1032 | kind: BackupTarget |
| 1033 | listKind: BackupTargetList |
| 1034 | plural: backuptargets |
| 1035 | shortNames: |
| 1036 | - lhbt |
| 1037 | singular: backuptarget |
| 1038 | scope: Namespaced |
| 1039 | versions: |
| 1040 | - additionalPrinterColumns: |
| 1041 | - description: The backup target URL |
| 1042 | jsonPath: .spec.backupTargetURL |
| 1043 | name: URL |
| 1044 | type: string |
| 1045 | - description: The backup target credential secret |
| 1046 | jsonPath: .spec.credentialSecret |
| 1047 | name: Credential |
| 1048 | type: string |
| 1049 | - description: The backup target poll interval |
| 1050 | jsonPath: .spec.pollInterval |
| 1051 | name: LastBackupAt |
| 1052 | type: string |
| 1053 | - description: Indicate whether the backup target is available or not |
| 1054 | jsonPath: .status.available |
| 1055 | name: Available |
| 1056 | type: boolean |
| 1057 | - description: The backup target last synced time |
| 1058 | jsonPath: .status.lastSyncedAt |
| 1059 | name: LastSyncedAt |
| 1060 | type: string |
| 1061 | name: v1beta1 |
| 1062 | schema: |
| 1063 | openAPIV3Schema: |
| 1064 | description: BackupTarget is where Longhorn stores backup target object. |
| 1065 | properties: |
| 1066 | apiVersion: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 1067 | description: |- |
| 1068 | APIVersion defines the versioned schema of this representation of an object. |
| 1069 | Servers should convert recognized schemas to the latest internal value, and |
| 1070 | may reject unrecognized values. |
| 1071 | More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 1072 | type: string |
| 1073 | kind: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 1074 | description: |- |
| 1075 | Kind is a string value representing the REST resource this object represents. |
| 1076 | Servers may infer this from the endpoint the client submits requests to. |
| 1077 | Cannot be updated. |
| 1078 | In CamelCase. |
| 1079 | More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 1080 | type: string |
| 1081 | metadata: |
| 1082 | type: object |
| 1083 | spec: |
| 1084 | x-kubernetes-preserve-unknown-fields: true |
| 1085 | status: |
| 1086 | x-kubernetes-preserve-unknown-fields: true |
| 1087 | type: object |
| 1088 | served: true |
| 1089 | storage: false |
| 1090 | subresources: |
| 1091 | status: {} |
| 1092 | - additionalPrinterColumns: |
| 1093 | - description: The backup target URL |
| 1094 | jsonPath: .spec.backupTargetURL |
| 1095 | name: URL |
| 1096 | type: string |
| 1097 | - description: The backup target credential secret |
| 1098 | jsonPath: .spec.credentialSecret |
| 1099 | name: Credential |
| 1100 | type: string |
| 1101 | - description: The backup target poll interval |
| 1102 | jsonPath: .spec.pollInterval |
| 1103 | name: LastBackupAt |
| 1104 | type: string |
| 1105 | - description: Indicate whether the backup target is available or not |
| 1106 | jsonPath: .status.available |
| 1107 | name: Available |
| 1108 | type: boolean |
| 1109 | - description: The backup target last synced time |
| 1110 | jsonPath: .status.lastSyncedAt |
| 1111 | name: LastSyncedAt |
| 1112 | type: string |
| 1113 | name: v1beta2 |
| 1114 | schema: |
| 1115 | openAPIV3Schema: |
| 1116 | description: BackupTarget is where Longhorn stores backup target object. |
| 1117 | properties: |
| 1118 | apiVersion: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 1119 | description: |- |
| 1120 | APIVersion defines the versioned schema of this representation of an object. |
| 1121 | Servers should convert recognized schemas to the latest internal value, and |
| 1122 | may reject unrecognized values. |
| 1123 | More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 1124 | type: string |
| 1125 | kind: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 1126 | description: |- |
| 1127 | Kind is a string value representing the REST resource this object represents. |
| 1128 | Servers may infer this from the endpoint the client submits requests to. |
| 1129 | Cannot be updated. |
| 1130 | In CamelCase. |
| 1131 | More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 1132 | type: string |
| 1133 | metadata: |
| 1134 | type: object |
| 1135 | spec: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 1136 | description: BackupTargetSpec defines the desired state of the Longhorn |
| 1137 | backup target |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 1138 | properties: |
| 1139 | backupTargetURL: |
| 1140 | description: The backup target URL. |
| 1141 | type: string |
| 1142 | credentialSecret: |
| 1143 | description: The backup target credential secret. |
| 1144 | type: string |
| 1145 | pollInterval: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 1146 | description: The interval that the cluster needs to run sync with |
| 1147 | the backup target. |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 1148 | type: string |
| 1149 | syncRequestedAt: |
| 1150 | description: The time to request run sync the remote backup target. |
| 1151 | format: date-time |
| 1152 | nullable: true |
| 1153 | type: string |
| 1154 | type: object |
| 1155 | status: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 1156 | description: BackupTargetStatus defines the observed state of the Longhorn |
| 1157 | backup target |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 1158 | properties: |
| 1159 | available: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 1160 | description: Available indicates if the remote backup target is available |
| 1161 | or not. |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 1162 | type: boolean |
| 1163 | conditions: |
| 1164 | description: Records the reason on why the backup target is unavailable. |
| 1165 | items: |
| 1166 | properties: |
| 1167 | lastProbeTime: |
| 1168 | description: Last time we probed the condition. |
| 1169 | type: string |
| 1170 | lastTransitionTime: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 1171 | description: Last time the condition transitioned from one status |
| 1172 | to another. |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 1173 | type: string |
| 1174 | message: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 1175 | description: Human-readable message indicating details about |
| 1176 | last transition. |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 1177 | type: string |
| 1178 | reason: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 1179 | description: Unique, one-word, CamelCase reason for the condition's |
| 1180 | last transition. |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 1181 | type: string |
| 1182 | status: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 1183 | description: |- |
| 1184 | Status is the status of the condition. |
| 1185 | Can be True, False, Unknown. |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 1186 | type: string |
| 1187 | type: |
| 1188 | description: Type is the type of the condition. |
| 1189 | type: string |
| 1190 | type: object |
| 1191 | nullable: true |
| 1192 | type: array |
| 1193 | lastSyncedAt: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 1194 | description: The last time that the controller synced with the remote |
| 1195 | backup target. |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 1196 | format: date-time |
| 1197 | nullable: true |
| 1198 | type: string |
| 1199 | ownerID: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 1200 | description: The node ID on which the controller is responsible to |
| 1201 | reconcile this backup target CR. |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 1202 | type: string |
| 1203 | type: object |
| 1204 | type: object |
| 1205 | served: true |
| 1206 | storage: true |
| 1207 | subresources: |
| 1208 | status: {} |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 1209 | --- |
| 1210 | apiVersion: apiextensions.k8s.io/v1 |
| 1211 | kind: CustomResourceDefinition |
| 1212 | metadata: |
| 1213 | annotations: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 1214 | controller-gen.kubebuilder.io/version: v0.15.0 |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 1215 | labels: {{- include "longhorn.labels" . | nindent 4 }} |
| 1216 | longhorn-manager: "" |
| 1217 | name: backupvolumes.longhorn.io |
| 1218 | spec: |
| 1219 | group: longhorn.io |
| 1220 | names: |
| 1221 | kind: BackupVolume |
| 1222 | listKind: BackupVolumeList |
| 1223 | plural: backupvolumes |
| 1224 | shortNames: |
| 1225 | - lhbv |
| 1226 | singular: backupvolume |
| 1227 | scope: Namespaced |
| 1228 | versions: |
| 1229 | - additionalPrinterColumns: |
| 1230 | - description: The backup volume creation time |
| 1231 | jsonPath: .status.createdAt |
| 1232 | name: CreatedAt |
| 1233 | type: string |
| 1234 | - description: The backup volume last backup name |
| 1235 | jsonPath: .status.lastBackupName |
| 1236 | name: LastBackupName |
| 1237 | type: string |
| 1238 | - description: The backup volume last backup time |
| 1239 | jsonPath: .status.lastBackupAt |
| 1240 | name: LastBackupAt |
| 1241 | type: string |
| 1242 | - description: The backup volume last synced time |
| 1243 | jsonPath: .status.lastSyncedAt |
| 1244 | name: LastSyncedAt |
| 1245 | type: string |
| 1246 | name: v1beta1 |
| 1247 | schema: |
| 1248 | openAPIV3Schema: |
| 1249 | description: BackupVolume is where Longhorn stores backup volume object. |
| 1250 | properties: |
| 1251 | apiVersion: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 1252 | description: |- |
| 1253 | APIVersion defines the versioned schema of this representation of an object. |
| 1254 | Servers should convert recognized schemas to the latest internal value, and |
| 1255 | may reject unrecognized values. |
| 1256 | More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 1257 | type: string |
| 1258 | kind: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 1259 | description: |- |
| 1260 | Kind is a string value representing the REST resource this object represents. |
| 1261 | Servers may infer this from the endpoint the client submits requests to. |
| 1262 | Cannot be updated. |
| 1263 | In CamelCase. |
| 1264 | More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 1265 | type: string |
| 1266 | metadata: |
| 1267 | type: object |
| 1268 | spec: |
| 1269 | x-kubernetes-preserve-unknown-fields: true |
| 1270 | status: |
| 1271 | x-kubernetes-preserve-unknown-fields: true |
| 1272 | type: object |
| 1273 | served: true |
| 1274 | storage: false |
| 1275 | subresources: |
| 1276 | status: {} |
| 1277 | - additionalPrinterColumns: |
| gio | 2539d9e | 2025-05-22 12:19:30 +0400 | [diff] [blame^] | 1278 | - description: The backup target name |
| 1279 | jsonPath: .spec.backupTargetName |
| 1280 | name: BackupTarget |
| 1281 | type: string |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 1282 | - description: The backup volume creation time |
| 1283 | jsonPath: .status.createdAt |
| 1284 | name: CreatedAt |
| 1285 | type: string |
| 1286 | - description: The backup volume last backup name |
| 1287 | jsonPath: .status.lastBackupName |
| 1288 | name: LastBackupName |
| 1289 | type: string |
| 1290 | - description: The backup volume last backup time |
| 1291 | jsonPath: .status.lastBackupAt |
| 1292 | name: LastBackupAt |
| 1293 | type: string |
| 1294 | - description: The backup volume last synced time |
| 1295 | jsonPath: .status.lastSyncedAt |
| 1296 | name: LastSyncedAt |
| 1297 | type: string |
| 1298 | name: v1beta2 |
| 1299 | schema: |
| 1300 | openAPIV3Schema: |
| 1301 | description: BackupVolume is where Longhorn stores backup volume object. |
| 1302 | properties: |
| 1303 | apiVersion: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 1304 | description: |- |
| 1305 | APIVersion defines the versioned schema of this representation of an object. |
| 1306 | Servers should convert recognized schemas to the latest internal value, and |
| 1307 | may reject unrecognized values. |
| 1308 | More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 1309 | type: string |
| 1310 | kind: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 1311 | description: |- |
| 1312 | Kind is a string value representing the REST resource this object represents. |
| 1313 | Servers may infer this from the endpoint the client submits requests to. |
| 1314 | Cannot be updated. |
| 1315 | In CamelCase. |
| 1316 | More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 1317 | type: string |
| 1318 | metadata: |
| 1319 | type: object |
| 1320 | spec: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 1321 | description: BackupVolumeSpec defines the desired state of the Longhorn |
| 1322 | backup volume |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 1323 | properties: |
| gio | 2539d9e | 2025-05-22 12:19:30 +0400 | [diff] [blame^] | 1324 | backupTargetName: |
| 1325 | description: The backup target name that the backup volume was synced. |
| 1326 | nullable: true |
| 1327 | type: string |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 1328 | syncRequestedAt: |
| 1329 | description: The time to request run sync the remote backup volume. |
| 1330 | format: date-time |
| 1331 | nullable: true |
| 1332 | type: string |
| gio | 2539d9e | 2025-05-22 12:19:30 +0400 | [diff] [blame^] | 1333 | volumeName: |
| 1334 | description: The volume name that the backup volume was used to backup. |
| 1335 | type: string |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 1336 | type: object |
| 1337 | status: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 1338 | description: BackupVolumeStatus defines the observed state of the Longhorn |
| 1339 | backup volume |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 1340 | properties: |
| 1341 | backingImageChecksum: |
| 1342 | description: the backing image checksum. |
| 1343 | type: string |
| 1344 | backingImageName: |
| 1345 | description: The backing image name. |
| 1346 | type: string |
| 1347 | createdAt: |
| 1348 | description: The backup volume creation time. |
| 1349 | type: string |
| 1350 | dataStored: |
| 1351 | description: The backup volume block count. |
| 1352 | type: string |
| 1353 | labels: |
| 1354 | additionalProperties: |
| 1355 | type: string |
| 1356 | description: The backup volume labels. |
| 1357 | nullable: true |
| 1358 | type: object |
| 1359 | lastBackupAt: |
| 1360 | description: The latest volume backup time. |
| 1361 | type: string |
| 1362 | lastBackupName: |
| 1363 | description: The latest volume backup name. |
| 1364 | type: string |
| 1365 | lastModificationTime: |
| 1366 | description: The backup volume config last modification time. |
| 1367 | format: date-time |
| 1368 | nullable: true |
| 1369 | type: string |
| 1370 | lastSyncedAt: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 1371 | description: The last time that the backup volume was synced into |
| 1372 | the cluster. |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 1373 | format: date-time |
| 1374 | nullable: true |
| 1375 | type: string |
| 1376 | messages: |
| 1377 | additionalProperties: |
| 1378 | type: string |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 1379 | description: The error messages when call longhorn engine on list |
| 1380 | or inspect backup volumes. |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 1381 | nullable: true |
| 1382 | type: object |
| 1383 | ownerID: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 1384 | description: The node ID on which the controller is responsible to |
| 1385 | reconcile this backup volume CR. |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 1386 | type: string |
| 1387 | size: |
| 1388 | description: The backup volume size. |
| 1389 | type: string |
| Giorgi Lekveishvili | 285ab62 | 2023-11-22 13:50:45 +0400 | [diff] [blame] | 1390 | storageClassName: |
| 1391 | description: the storage class name of pv/pvc binding with the volume. |
| 1392 | type: string |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 1393 | type: object |
| 1394 | type: object |
| 1395 | served: true |
| 1396 | storage: true |
| 1397 | subresources: |
| 1398 | status: {} |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 1399 | --- |
| 1400 | apiVersion: apiextensions.k8s.io/v1 |
| 1401 | kind: CustomResourceDefinition |
| 1402 | metadata: |
| 1403 | annotations: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 1404 | controller-gen.kubebuilder.io/version: v0.15.0 |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 1405 | labels: {{- include "longhorn.labels" . | nindent 4 }} |
| 1406 | longhorn-manager: "" |
| 1407 | name: engineimages.longhorn.io |
| 1408 | spec: |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 1409 | conversion: |
| 1410 | strategy: Webhook |
| 1411 | webhook: |
| 1412 | clientConfig: |
| 1413 | service: |
| 1414 | name: longhorn-conversion-webhook |
| 1415 | namespace: {{ include "release_namespace" . }} |
| 1416 | path: /v1/webhook/conversion |
| Giorgi Lekveishvili | 285ab62 | 2023-11-22 13:50:45 +0400 | [diff] [blame] | 1417 | port: 9501 |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 1418 | conversionReviewVersions: |
| 1419 | - v1beta2 |
| 1420 | - v1beta1 |
| 1421 | group: longhorn.io |
| 1422 | names: |
| 1423 | kind: EngineImage |
| 1424 | listKind: EngineImageList |
| 1425 | plural: engineimages |
| 1426 | shortNames: |
| 1427 | - lhei |
| 1428 | singular: engineimage |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 1429 | preserveUnknownFields: false |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 1430 | scope: Namespaced |
| 1431 | versions: |
| 1432 | - additionalPrinterColumns: |
| 1433 | - description: State of the engine image |
| 1434 | jsonPath: .status.state |
| 1435 | name: State |
| 1436 | type: string |
| 1437 | - description: The Longhorn engine image |
| 1438 | jsonPath: .spec.image |
| 1439 | name: Image |
| 1440 | type: string |
| 1441 | - description: Number of resources using the engine image |
| 1442 | jsonPath: .status.refCount |
| 1443 | name: RefCount |
| 1444 | type: integer |
| 1445 | - description: The build date of the engine image |
| 1446 | jsonPath: .status.buildDate |
| 1447 | name: BuildDate |
| 1448 | type: date |
| 1449 | - jsonPath: .metadata.creationTimestamp |
| 1450 | name: Age |
| 1451 | type: date |
| 1452 | name: v1beta1 |
| 1453 | schema: |
| 1454 | openAPIV3Schema: |
| 1455 | description: EngineImage is where Longhorn stores engine image object. |
| 1456 | properties: |
| 1457 | apiVersion: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 1458 | description: |- |
| 1459 | APIVersion defines the versioned schema of this representation of an object. |
| 1460 | Servers should convert recognized schemas to the latest internal value, and |
| 1461 | may reject unrecognized values. |
| 1462 | More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 1463 | type: string |
| 1464 | kind: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 1465 | description: |- |
| 1466 | Kind is a string value representing the REST resource this object represents. |
| 1467 | Servers may infer this from the endpoint the client submits requests to. |
| 1468 | Cannot be updated. |
| 1469 | In CamelCase. |
| 1470 | More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 1471 | type: string |
| 1472 | metadata: |
| 1473 | type: object |
| 1474 | spec: |
| 1475 | x-kubernetes-preserve-unknown-fields: true |
| 1476 | status: |
| 1477 | x-kubernetes-preserve-unknown-fields: true |
| 1478 | type: object |
| 1479 | served: true |
| 1480 | storage: false |
| 1481 | subresources: |
| 1482 | status: {} |
| 1483 | - additionalPrinterColumns: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 1484 | - description: Compatibility of the engine image |
| 1485 | jsonPath: .status.incompatible |
| 1486 | name: Incompatible |
| 1487 | type: boolean |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 1488 | - description: State of the engine image |
| 1489 | jsonPath: .status.state |
| 1490 | name: State |
| 1491 | type: string |
| 1492 | - description: The Longhorn engine image |
| 1493 | jsonPath: .spec.image |
| 1494 | name: Image |
| 1495 | type: string |
| 1496 | - description: Number of resources using the engine image |
| 1497 | jsonPath: .status.refCount |
| 1498 | name: RefCount |
| 1499 | type: integer |
| 1500 | - description: The build date of the engine image |
| 1501 | jsonPath: .status.buildDate |
| 1502 | name: BuildDate |
| 1503 | type: date |
| 1504 | - jsonPath: .metadata.creationTimestamp |
| 1505 | name: Age |
| 1506 | type: date |
| 1507 | name: v1beta2 |
| 1508 | schema: |
| 1509 | openAPIV3Schema: |
| 1510 | description: EngineImage is where Longhorn stores engine image object. |
| 1511 | properties: |
| 1512 | apiVersion: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 1513 | description: |- |
| 1514 | APIVersion defines the versioned schema of this representation of an object. |
| 1515 | Servers should convert recognized schemas to the latest internal value, and |
| 1516 | may reject unrecognized values. |
| 1517 | More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 1518 | type: string |
| 1519 | kind: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 1520 | description: |- |
| 1521 | Kind is a string value representing the REST resource this object represents. |
| 1522 | Servers may infer this from the endpoint the client submits requests to. |
| 1523 | Cannot be updated. |
| 1524 | In CamelCase. |
| 1525 | More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 1526 | type: string |
| 1527 | metadata: |
| 1528 | type: object |
| 1529 | spec: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 1530 | description: EngineImageSpec defines the desired state of the Longhorn |
| 1531 | engine image |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 1532 | properties: |
| 1533 | image: |
| 1534 | minLength: 1 |
| 1535 | type: string |
| 1536 | required: |
| 1537 | - image |
| 1538 | type: object |
| 1539 | status: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 1540 | description: EngineImageStatus defines the observed state of the Longhorn |
| 1541 | engine image |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 1542 | properties: |
| 1543 | buildDate: |
| 1544 | type: string |
| 1545 | cliAPIMinVersion: |
| 1546 | type: integer |
| 1547 | cliAPIVersion: |
| 1548 | type: integer |
| 1549 | conditions: |
| 1550 | items: |
| 1551 | properties: |
| 1552 | lastProbeTime: |
| 1553 | description: Last time we probed the condition. |
| 1554 | type: string |
| 1555 | lastTransitionTime: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 1556 | description: Last time the condition transitioned from one status |
| 1557 | to another. |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 1558 | type: string |
| 1559 | message: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 1560 | description: Human-readable message indicating details about |
| 1561 | last transition. |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 1562 | type: string |
| 1563 | reason: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 1564 | description: Unique, one-word, CamelCase reason for the condition's |
| 1565 | last transition. |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 1566 | type: string |
| 1567 | status: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 1568 | description: |- |
| 1569 | Status is the status of the condition. |
| 1570 | Can be True, False, Unknown. |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 1571 | type: string |
| 1572 | type: |
| 1573 | description: Type is the type of the condition. |
| 1574 | type: string |
| 1575 | type: object |
| 1576 | nullable: true |
| 1577 | type: array |
| 1578 | controllerAPIMinVersion: |
| 1579 | type: integer |
| 1580 | controllerAPIVersion: |
| 1581 | type: integer |
| 1582 | dataFormatMinVersion: |
| 1583 | type: integer |
| 1584 | dataFormatVersion: |
| 1585 | type: integer |
| 1586 | gitCommit: |
| 1587 | type: string |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 1588 | incompatible: |
| 1589 | type: boolean |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 1590 | noRefSince: |
| 1591 | type: string |
| 1592 | nodeDeploymentMap: |
| 1593 | additionalProperties: |
| 1594 | type: boolean |
| 1595 | nullable: true |
| 1596 | type: object |
| 1597 | ownerID: |
| 1598 | type: string |
| 1599 | refCount: |
| 1600 | type: integer |
| 1601 | state: |
| 1602 | type: string |
| 1603 | version: |
| 1604 | type: string |
| 1605 | type: object |
| 1606 | type: object |
| 1607 | served: true |
| 1608 | storage: true |
| 1609 | subresources: |
| 1610 | status: {} |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 1611 | --- |
| 1612 | apiVersion: apiextensions.k8s.io/v1 |
| 1613 | kind: CustomResourceDefinition |
| 1614 | metadata: |
| 1615 | annotations: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 1616 | controller-gen.kubebuilder.io/version: v0.15.0 |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 1617 | labels: {{- include "longhorn.labels" . | nindent 4 }} |
| 1618 | longhorn-manager: "" |
| 1619 | name: engines.longhorn.io |
| 1620 | spec: |
| 1621 | group: longhorn.io |
| 1622 | names: |
| 1623 | kind: Engine |
| 1624 | listKind: EngineList |
| 1625 | plural: engines |
| 1626 | shortNames: |
| 1627 | - lhe |
| 1628 | singular: engine |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 1629 | preserveUnknownFields: false |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 1630 | scope: Namespaced |
| 1631 | versions: |
| 1632 | - additionalPrinterColumns: |
| 1633 | - description: The current state of the engine |
| 1634 | jsonPath: .status.currentState |
| 1635 | name: State |
| 1636 | type: string |
| 1637 | - description: The node that the engine is on |
| 1638 | jsonPath: .spec.nodeID |
| 1639 | name: Node |
| 1640 | type: string |
| 1641 | - description: The instance manager of the engine |
| 1642 | jsonPath: .status.instanceManagerName |
| 1643 | name: InstanceManager |
| 1644 | type: string |
| 1645 | - description: The current image of the engine |
| 1646 | jsonPath: .status.currentImage |
| 1647 | name: Image |
| 1648 | type: string |
| 1649 | - jsonPath: .metadata.creationTimestamp |
| 1650 | name: Age |
| 1651 | type: date |
| 1652 | name: v1beta1 |
| 1653 | schema: |
| 1654 | openAPIV3Schema: |
| 1655 | description: Engine is where Longhorn stores engine object. |
| 1656 | properties: |
| 1657 | apiVersion: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 1658 | description: |- |
| 1659 | APIVersion defines the versioned schema of this representation of an object. |
| 1660 | Servers should convert recognized schemas to the latest internal value, and |
| 1661 | may reject unrecognized values. |
| 1662 | More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 1663 | type: string |
| 1664 | kind: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 1665 | description: |- |
| 1666 | Kind is a string value representing the REST resource this object represents. |
| 1667 | Servers may infer this from the endpoint the client submits requests to. |
| 1668 | Cannot be updated. |
| 1669 | In CamelCase. |
| 1670 | More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 1671 | type: string |
| 1672 | metadata: |
| 1673 | type: object |
| 1674 | spec: |
| 1675 | x-kubernetes-preserve-unknown-fields: true |
| 1676 | status: |
| 1677 | x-kubernetes-preserve-unknown-fields: true |
| 1678 | type: object |
| 1679 | served: true |
| 1680 | storage: false |
| 1681 | subresources: |
| 1682 | status: {} |
| 1683 | - additionalPrinterColumns: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 1684 | - description: The data engine of the engine |
| 1685 | jsonPath: .spec.dataEngine |
| 1686 | name: Data Engine |
| 1687 | type: string |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 1688 | - description: The current state of the engine |
| 1689 | jsonPath: .status.currentState |
| 1690 | name: State |
| 1691 | type: string |
| 1692 | - description: The node that the engine is on |
| 1693 | jsonPath: .spec.nodeID |
| 1694 | name: Node |
| 1695 | type: string |
| 1696 | - description: The instance manager of the engine |
| 1697 | jsonPath: .status.instanceManagerName |
| 1698 | name: InstanceManager |
| 1699 | type: string |
| 1700 | - description: The current image of the engine |
| 1701 | jsonPath: .status.currentImage |
| 1702 | name: Image |
| 1703 | type: string |
| 1704 | - jsonPath: .metadata.creationTimestamp |
| 1705 | name: Age |
| 1706 | type: date |
| 1707 | name: v1beta2 |
| 1708 | schema: |
| 1709 | openAPIV3Schema: |
| 1710 | description: Engine is where Longhorn stores engine object. |
| 1711 | properties: |
| 1712 | apiVersion: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 1713 | description: |- |
| 1714 | APIVersion defines the versioned schema of this representation of an object. |
| 1715 | Servers should convert recognized schemas to the latest internal value, and |
| 1716 | may reject unrecognized values. |
| 1717 | More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 1718 | type: string |
| 1719 | kind: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 1720 | description: |- |
| 1721 | Kind is a string value representing the REST resource this object represents. |
| 1722 | Servers may infer this from the endpoint the client submits requests to. |
| 1723 | Cannot be updated. |
| 1724 | In CamelCase. |
| 1725 | More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 1726 | type: string |
| 1727 | metadata: |
| 1728 | type: object |
| 1729 | spec: |
| 1730 | description: EngineSpec defines the desired state of the Longhorn engine |
| 1731 | properties: |
| 1732 | active: |
| 1733 | type: boolean |
| Giorgi Lekveishvili | 285ab62 | 2023-11-22 13:50:45 +0400 | [diff] [blame] | 1734 | backendStoreDriver: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 1735 | description: Deprecated:Replaced by field `dataEngine`. |
| 1736 | type: string |
| 1737 | backupVolume: |
| 1738 | type: string |
| 1739 | dataEngine: |
| Giorgi Lekveishvili | 285ab62 | 2023-11-22 13:50:45 +0400 | [diff] [blame] | 1740 | enum: |
| 1741 | - v1 |
| 1742 | - v2 |
| 1743 | type: string |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 1744 | desireState: |
| 1745 | type: string |
| 1746 | disableFrontend: |
| 1747 | type: boolean |
| 1748 | engineImage: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 1749 | description: 'Deprecated: Replaced by field `image`.' |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 1750 | type: string |
| 1751 | frontend: |
| 1752 | enum: |
| 1753 | - blockdev |
| 1754 | - iscsi |
| Giorgi Lekveishvili | 285ab62 | 2023-11-22 13:50:45 +0400 | [diff] [blame] | 1755 | - nvmf |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 1756 | - "" |
| 1757 | type: string |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 1758 | image: |
| 1759 | type: string |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 1760 | logRequested: |
| 1761 | type: boolean |
| 1762 | nodeID: |
| 1763 | type: string |
| 1764 | replicaAddressMap: |
| 1765 | additionalProperties: |
| 1766 | type: string |
| 1767 | type: object |
| 1768 | requestedBackupRestore: |
| 1769 | type: string |
| 1770 | requestedDataSource: |
| 1771 | type: string |
| 1772 | revisionCounterDisabled: |
| 1773 | type: boolean |
| 1774 | salvageRequested: |
| 1775 | type: boolean |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 1776 | snapshotMaxCount: |
| 1777 | type: integer |
| 1778 | snapshotMaxSize: |
| 1779 | format: int64 |
| 1780 | type: string |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 1781 | unmapMarkSnapChainRemovedEnabled: |
| 1782 | type: boolean |
| 1783 | upgradedReplicaAddressMap: |
| 1784 | additionalProperties: |
| 1785 | type: string |
| 1786 | type: object |
| 1787 | volumeName: |
| 1788 | type: string |
| 1789 | volumeSize: |
| 1790 | format: int64 |
| 1791 | type: string |
| 1792 | type: object |
| 1793 | status: |
| 1794 | description: EngineStatus defines the observed state of the Longhorn engine |
| 1795 | properties: |
| 1796 | backupStatus: |
| 1797 | additionalProperties: |
| 1798 | properties: |
| 1799 | backupURL: |
| 1800 | type: string |
| 1801 | error: |
| 1802 | type: string |
| 1803 | progress: |
| 1804 | type: integer |
| 1805 | replicaAddress: |
| 1806 | type: string |
| 1807 | snapshotName: |
| 1808 | type: string |
| 1809 | state: |
| 1810 | type: string |
| 1811 | type: object |
| 1812 | nullable: true |
| 1813 | type: object |
| 1814 | cloneStatus: |
| 1815 | additionalProperties: |
| 1816 | properties: |
| 1817 | error: |
| 1818 | type: string |
| 1819 | fromReplicaAddress: |
| 1820 | type: string |
| 1821 | isCloning: |
| 1822 | type: boolean |
| 1823 | progress: |
| 1824 | type: integer |
| 1825 | snapshotName: |
| 1826 | type: string |
| 1827 | state: |
| 1828 | type: string |
| 1829 | type: object |
| 1830 | nullable: true |
| 1831 | type: object |
| 1832 | conditions: |
| 1833 | items: |
| 1834 | properties: |
| 1835 | lastProbeTime: |
| 1836 | description: Last time we probed the condition. |
| 1837 | type: string |
| 1838 | lastTransitionTime: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 1839 | description: Last time the condition transitioned from one status |
| 1840 | to another. |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 1841 | type: string |
| 1842 | message: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 1843 | description: Human-readable message indicating details about |
| 1844 | last transition. |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 1845 | type: string |
| 1846 | reason: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 1847 | description: Unique, one-word, CamelCase reason for the condition's |
| 1848 | last transition. |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 1849 | type: string |
| 1850 | status: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 1851 | description: |- |
| 1852 | Status is the status of the condition. |
| 1853 | Can be True, False, Unknown. |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 1854 | type: string |
| 1855 | type: |
| 1856 | description: Type is the type of the condition. |
| 1857 | type: string |
| 1858 | type: object |
| 1859 | nullable: true |
| 1860 | type: array |
| 1861 | currentImage: |
| 1862 | type: string |
| 1863 | currentReplicaAddressMap: |
| 1864 | additionalProperties: |
| 1865 | type: string |
| 1866 | nullable: true |
| 1867 | type: object |
| 1868 | currentSize: |
| 1869 | format: int64 |
| 1870 | type: string |
| 1871 | currentState: |
| 1872 | type: string |
| 1873 | endpoint: |
| 1874 | type: string |
| 1875 | instanceManagerName: |
| 1876 | type: string |
| 1877 | ip: |
| 1878 | type: string |
| 1879 | isExpanding: |
| 1880 | type: boolean |
| 1881 | lastExpansionError: |
| 1882 | type: string |
| 1883 | lastExpansionFailedAt: |
| 1884 | type: string |
| 1885 | lastRestoredBackup: |
| 1886 | type: string |
| 1887 | logFetched: |
| 1888 | type: boolean |
| 1889 | ownerID: |
| 1890 | type: string |
| 1891 | port: |
| 1892 | type: integer |
| 1893 | purgeStatus: |
| 1894 | additionalProperties: |
| 1895 | properties: |
| 1896 | error: |
| 1897 | type: string |
| 1898 | isPurging: |
| 1899 | type: boolean |
| 1900 | progress: |
| 1901 | type: integer |
| 1902 | state: |
| 1903 | type: string |
| 1904 | type: object |
| 1905 | nullable: true |
| 1906 | type: object |
| 1907 | rebuildStatus: |
| 1908 | additionalProperties: |
| 1909 | properties: |
| 1910 | error: |
| 1911 | type: string |
| 1912 | fromReplicaAddress: |
| 1913 | type: string |
| 1914 | isRebuilding: |
| 1915 | type: boolean |
| 1916 | progress: |
| 1917 | type: integer |
| 1918 | state: |
| 1919 | type: string |
| 1920 | type: object |
| 1921 | nullable: true |
| 1922 | type: object |
| 1923 | replicaModeMap: |
| 1924 | additionalProperties: |
| 1925 | type: string |
| 1926 | nullable: true |
| 1927 | type: object |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 1928 | replicaTransitionTimeMap: |
| 1929 | additionalProperties: |
| 1930 | type: string |
| 1931 | description: |- |
| 1932 | ReplicaTransitionTimeMap records the time a replica in ReplicaModeMap transitions from one mode to another (or |
| 1933 | from not being in the ReplicaModeMap to being in it). This information is sometimes required by other controllers |
| 1934 | (e.g. the volume controller uses it to determine the correct value for replica.Spec.lastHealthyAt). |
| 1935 | type: object |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 1936 | restoreStatus: |
| 1937 | additionalProperties: |
| 1938 | properties: |
| 1939 | backupURL: |
| 1940 | type: string |
| 1941 | currentRestoringBackup: |
| 1942 | type: string |
| 1943 | error: |
| 1944 | type: string |
| 1945 | filename: |
| 1946 | type: string |
| 1947 | isRestoring: |
| 1948 | type: boolean |
| 1949 | lastRestored: |
| 1950 | type: string |
| 1951 | progress: |
| 1952 | type: integer |
| 1953 | state: |
| 1954 | type: string |
| 1955 | type: object |
| 1956 | nullable: true |
| 1957 | type: object |
| 1958 | salvageExecuted: |
| 1959 | type: boolean |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 1960 | snapshotMaxCount: |
| 1961 | type: integer |
| 1962 | snapshotMaxSize: |
| 1963 | format: int64 |
| 1964 | type: string |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 1965 | snapshots: |
| 1966 | additionalProperties: |
| 1967 | properties: |
| 1968 | children: |
| 1969 | additionalProperties: |
| 1970 | type: boolean |
| 1971 | nullable: true |
| 1972 | type: object |
| 1973 | created: |
| 1974 | type: string |
| 1975 | labels: |
| 1976 | additionalProperties: |
| 1977 | type: string |
| 1978 | nullable: true |
| 1979 | type: object |
| 1980 | name: |
| 1981 | type: string |
| 1982 | parent: |
| 1983 | type: string |
| 1984 | removed: |
| 1985 | type: boolean |
| 1986 | size: |
| 1987 | type: string |
| 1988 | usercreated: |
| 1989 | type: boolean |
| 1990 | type: object |
| 1991 | nullable: true |
| 1992 | type: object |
| 1993 | snapshotsError: |
| 1994 | type: string |
| 1995 | started: |
| 1996 | type: boolean |
| 1997 | storageIP: |
| 1998 | type: string |
| 1999 | unmapMarkSnapChainRemovedEnabled: |
| 2000 | type: boolean |
| 2001 | type: object |
| 2002 | type: object |
| 2003 | served: true |
| 2004 | storage: true |
| 2005 | subresources: |
| 2006 | status: {} |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2007 | --- |
| 2008 | apiVersion: apiextensions.k8s.io/v1 |
| 2009 | kind: CustomResourceDefinition |
| 2010 | metadata: |
| 2011 | annotations: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 2012 | controller-gen.kubebuilder.io/version: v0.15.0 |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2013 | labels: {{- include "longhorn.labels" . | nindent 4 }} |
| 2014 | longhorn-manager: "" |
| 2015 | name: instancemanagers.longhorn.io |
| 2016 | spec: |
| 2017 | group: longhorn.io |
| 2018 | names: |
| 2019 | kind: InstanceManager |
| 2020 | listKind: InstanceManagerList |
| 2021 | plural: instancemanagers |
| 2022 | shortNames: |
| 2023 | - lhim |
| 2024 | singular: instancemanager |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 2025 | preserveUnknownFields: false |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2026 | scope: Namespaced |
| 2027 | versions: |
| 2028 | - additionalPrinterColumns: |
| 2029 | - description: The state of the instance manager |
| 2030 | jsonPath: .status.currentState |
| 2031 | name: State |
| 2032 | type: string |
| 2033 | - description: The type of the instance manager (engine or replica) |
| 2034 | jsonPath: .spec.type |
| 2035 | name: Type |
| 2036 | type: string |
| 2037 | - description: The node that the instance manager is running on |
| 2038 | jsonPath: .spec.nodeID |
| 2039 | name: Node |
| 2040 | type: string |
| 2041 | - jsonPath: .metadata.creationTimestamp |
| 2042 | name: Age |
| 2043 | type: date |
| 2044 | name: v1beta1 |
| 2045 | schema: |
| 2046 | openAPIV3Schema: |
| 2047 | description: InstanceManager is where Longhorn stores instance manager object. |
| 2048 | properties: |
| 2049 | apiVersion: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 2050 | description: |- |
| 2051 | APIVersion defines the versioned schema of this representation of an object. |
| 2052 | Servers should convert recognized schemas to the latest internal value, and |
| 2053 | may reject unrecognized values. |
| 2054 | More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2055 | type: string |
| 2056 | kind: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 2057 | description: |- |
| 2058 | Kind is a string value representing the REST resource this object represents. |
| 2059 | Servers may infer this from the endpoint the client submits requests to. |
| 2060 | Cannot be updated. |
| 2061 | In CamelCase. |
| 2062 | More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2063 | type: string |
| 2064 | metadata: |
| 2065 | type: object |
| 2066 | spec: |
| 2067 | x-kubernetes-preserve-unknown-fields: true |
| 2068 | status: |
| 2069 | x-kubernetes-preserve-unknown-fields: true |
| 2070 | type: object |
| 2071 | served: true |
| 2072 | storage: false |
| 2073 | subresources: |
| 2074 | status: {} |
| 2075 | - additionalPrinterColumns: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 2076 | - description: The data engine of the instance manager |
| 2077 | jsonPath: .spec.dataEngine |
| 2078 | name: Data Engine |
| 2079 | type: string |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2080 | - description: The state of the instance manager |
| 2081 | jsonPath: .status.currentState |
| 2082 | name: State |
| 2083 | type: string |
| 2084 | - description: The type of the instance manager (engine or replica) |
| 2085 | jsonPath: .spec.type |
| 2086 | name: Type |
| 2087 | type: string |
| 2088 | - description: The node that the instance manager is running on |
| 2089 | jsonPath: .spec.nodeID |
| 2090 | name: Node |
| 2091 | type: string |
| 2092 | - jsonPath: .metadata.creationTimestamp |
| 2093 | name: Age |
| 2094 | type: date |
| 2095 | name: v1beta2 |
| 2096 | schema: |
| 2097 | openAPIV3Schema: |
| 2098 | description: InstanceManager is where Longhorn stores instance manager object. |
| 2099 | properties: |
| 2100 | apiVersion: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 2101 | description: |- |
| 2102 | APIVersion defines the versioned schema of this representation of an object. |
| 2103 | Servers should convert recognized schemas to the latest internal value, and |
| 2104 | may reject unrecognized values. |
| 2105 | More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2106 | type: string |
| 2107 | kind: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 2108 | description: |- |
| 2109 | Kind is a string value representing the REST resource this object represents. |
| 2110 | Servers may infer this from the endpoint the client submits requests to. |
| 2111 | Cannot be updated. |
| 2112 | In CamelCase. |
| 2113 | More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2114 | type: string |
| 2115 | metadata: |
| 2116 | type: object |
| 2117 | spec: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 2118 | description: InstanceManagerSpec defines the desired state of the Longhorn |
| 2119 | instance manager |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2120 | properties: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 2121 | dataEngine: |
| 2122 | type: string |
| gio | 2539d9e | 2025-05-22 12:19:30 +0400 | [diff] [blame^] | 2123 | dataEngineSpec: |
| 2124 | properties: |
| 2125 | v2: |
| 2126 | properties: |
| 2127 | cpuMask: |
| 2128 | type: string |
| 2129 | type: object |
| 2130 | type: object |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2131 | image: |
| 2132 | type: string |
| 2133 | nodeID: |
| 2134 | type: string |
| 2135 | type: |
| 2136 | enum: |
| Giorgi Lekveishvili | 285ab62 | 2023-11-22 13:50:45 +0400 | [diff] [blame] | 2137 | - aio |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2138 | - engine |
| 2139 | - replica |
| 2140 | type: string |
| 2141 | type: object |
| 2142 | status: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 2143 | description: InstanceManagerStatus defines the observed state of the Longhorn |
| 2144 | instance manager |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2145 | properties: |
| 2146 | apiMinVersion: |
| 2147 | type: integer |
| 2148 | apiVersion: |
| 2149 | type: integer |
| gio | 2539d9e | 2025-05-22 12:19:30 +0400 | [diff] [blame^] | 2150 | backingImages: |
| 2151 | additionalProperties: |
| 2152 | properties: |
| 2153 | currentChecksum: |
| 2154 | type: string |
| 2155 | diskUUID: |
| 2156 | type: string |
| 2157 | message: |
| 2158 | type: string |
| 2159 | name: |
| 2160 | type: string |
| 2161 | progress: |
| 2162 | type: integer |
| 2163 | size: |
| 2164 | format: int64 |
| 2165 | type: integer |
| 2166 | state: |
| 2167 | type: string |
| 2168 | uuid: |
| 2169 | type: string |
| 2170 | type: object |
| 2171 | nullable: true |
| 2172 | type: object |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2173 | currentState: |
| 2174 | type: string |
| gio | 2539d9e | 2025-05-22 12:19:30 +0400 | [diff] [blame^] | 2175 | dataEngineStatus: |
| 2176 | properties: |
| 2177 | v2: |
| 2178 | properties: |
| 2179 | cpuMask: |
| 2180 | type: string |
| 2181 | type: object |
| 2182 | type: object |
| Giorgi Lekveishvili | 285ab62 | 2023-11-22 13:50:45 +0400 | [diff] [blame] | 2183 | instanceEngines: |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2184 | additionalProperties: |
| 2185 | properties: |
| 2186 | spec: |
| 2187 | properties: |
| Giorgi Lekveishvili | 285ab62 | 2023-11-22 13:50:45 +0400 | [diff] [blame] | 2188 | backendStoreDriver: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 2189 | description: Deprecated:Replaced by field `dataEngine`. |
| 2190 | type: string |
| 2191 | dataEngine: |
| Giorgi Lekveishvili | 285ab62 | 2023-11-22 13:50:45 +0400 | [diff] [blame] | 2192 | type: string |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2193 | name: |
| 2194 | type: string |
| 2195 | type: object |
| 2196 | status: |
| 2197 | properties: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 2198 | conditions: |
| 2199 | additionalProperties: |
| 2200 | type: boolean |
| 2201 | nullable: true |
| 2202 | type: object |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2203 | endpoint: |
| 2204 | type: string |
| 2205 | errorMsg: |
| 2206 | type: string |
| 2207 | listen: |
| 2208 | type: string |
| 2209 | portEnd: |
| 2210 | format: int32 |
| 2211 | type: integer |
| 2212 | portStart: |
| 2213 | format: int32 |
| 2214 | type: integer |
| 2215 | resourceVersion: |
| 2216 | format: int64 |
| 2217 | type: integer |
| 2218 | state: |
| 2219 | type: string |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 2220 | targetPortEnd: |
| 2221 | format: int32 |
| 2222 | type: integer |
| 2223 | targetPortStart: |
| 2224 | format: int32 |
| 2225 | type: integer |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2226 | type: |
| 2227 | type: string |
| 2228 | type: object |
| 2229 | type: object |
| 2230 | nullable: true |
| 2231 | type: object |
| Giorgi Lekveishvili | 285ab62 | 2023-11-22 13:50:45 +0400 | [diff] [blame] | 2232 | instanceReplicas: |
| 2233 | additionalProperties: |
| 2234 | properties: |
| 2235 | spec: |
| 2236 | properties: |
| 2237 | backendStoreDriver: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 2238 | description: Deprecated:Replaced by field `dataEngine`. |
| 2239 | type: string |
| 2240 | dataEngine: |
| Giorgi Lekveishvili | 285ab62 | 2023-11-22 13:50:45 +0400 | [diff] [blame] | 2241 | type: string |
| 2242 | name: |
| 2243 | type: string |
| 2244 | type: object |
| 2245 | status: |
| 2246 | properties: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 2247 | conditions: |
| 2248 | additionalProperties: |
| 2249 | type: boolean |
| 2250 | nullable: true |
| 2251 | type: object |
| Giorgi Lekveishvili | 285ab62 | 2023-11-22 13:50:45 +0400 | [diff] [blame] | 2252 | endpoint: |
| 2253 | type: string |
| 2254 | errorMsg: |
| 2255 | type: string |
| 2256 | listen: |
| 2257 | type: string |
| 2258 | portEnd: |
| 2259 | format: int32 |
| 2260 | type: integer |
| 2261 | portStart: |
| 2262 | format: int32 |
| 2263 | type: integer |
| 2264 | resourceVersion: |
| 2265 | format: int64 |
| 2266 | type: integer |
| 2267 | state: |
| 2268 | type: string |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 2269 | targetPortEnd: |
| 2270 | format: int32 |
| 2271 | type: integer |
| 2272 | targetPortStart: |
| 2273 | format: int32 |
| 2274 | type: integer |
| Giorgi Lekveishvili | 285ab62 | 2023-11-22 13:50:45 +0400 | [diff] [blame] | 2275 | type: |
| 2276 | type: string |
| 2277 | type: object |
| 2278 | type: object |
| 2279 | nullable: true |
| 2280 | type: object |
| 2281 | instances: |
| 2282 | additionalProperties: |
| 2283 | properties: |
| 2284 | spec: |
| 2285 | properties: |
| 2286 | backendStoreDriver: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 2287 | description: Deprecated:Replaced by field `dataEngine`. |
| 2288 | type: string |
| 2289 | dataEngine: |
| Giorgi Lekveishvili | 285ab62 | 2023-11-22 13:50:45 +0400 | [diff] [blame] | 2290 | type: string |
| 2291 | name: |
| 2292 | type: string |
| 2293 | type: object |
| 2294 | status: |
| 2295 | properties: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 2296 | conditions: |
| 2297 | additionalProperties: |
| 2298 | type: boolean |
| 2299 | nullable: true |
| 2300 | type: object |
| Giorgi Lekveishvili | 285ab62 | 2023-11-22 13:50:45 +0400 | [diff] [blame] | 2301 | endpoint: |
| 2302 | type: string |
| 2303 | errorMsg: |
| 2304 | type: string |
| 2305 | listen: |
| 2306 | type: string |
| 2307 | portEnd: |
| 2308 | format: int32 |
| 2309 | type: integer |
| 2310 | portStart: |
| 2311 | format: int32 |
| 2312 | type: integer |
| 2313 | resourceVersion: |
| 2314 | format: int64 |
| 2315 | type: integer |
| 2316 | state: |
| 2317 | type: string |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 2318 | targetPortEnd: |
| 2319 | format: int32 |
| 2320 | type: integer |
| 2321 | targetPortStart: |
| 2322 | format: int32 |
| 2323 | type: integer |
| Giorgi Lekveishvili | 285ab62 | 2023-11-22 13:50:45 +0400 | [diff] [blame] | 2324 | type: |
| 2325 | type: string |
| 2326 | type: object |
| 2327 | type: object |
| Giorgi Lekveishvili | 285ab62 | 2023-11-22 13:50:45 +0400 | [diff] [blame] | 2328 | description: 'Deprecated: Replaced by InstanceEngines and InstanceReplicas' |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 2329 | nullable: true |
| Giorgi Lekveishvili | 285ab62 | 2023-11-22 13:50:45 +0400 | [diff] [blame] | 2330 | type: object |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2331 | ip: |
| 2332 | type: string |
| 2333 | ownerID: |
| 2334 | type: string |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 2335 | proxyApiMinVersion: |
| 2336 | type: integer |
| 2337 | proxyApiVersion: |
| 2338 | type: integer |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2339 | type: object |
| 2340 | type: object |
| 2341 | served: true |
| 2342 | storage: true |
| 2343 | subresources: |
| 2344 | status: {} |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2345 | --- |
| 2346 | apiVersion: apiextensions.k8s.io/v1 |
| 2347 | kind: CustomResourceDefinition |
| 2348 | metadata: |
| 2349 | annotations: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 2350 | controller-gen.kubebuilder.io/version: v0.15.0 |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2351 | labels: {{- include "longhorn.labels" . | nindent 4 }} |
| 2352 | longhorn-manager: "" |
| 2353 | name: nodes.longhorn.io |
| 2354 | spec: |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2355 | conversion: |
| 2356 | strategy: Webhook |
| 2357 | webhook: |
| 2358 | clientConfig: |
| 2359 | service: |
| 2360 | name: longhorn-conversion-webhook |
| 2361 | namespace: {{ include "release_namespace" . }} |
| 2362 | path: /v1/webhook/conversion |
| Giorgi Lekveishvili | 285ab62 | 2023-11-22 13:50:45 +0400 | [diff] [blame] | 2363 | port: 9501 |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2364 | conversionReviewVersions: |
| 2365 | - v1beta2 |
| 2366 | - v1beta1 |
| 2367 | group: longhorn.io |
| 2368 | names: |
| 2369 | kind: Node |
| 2370 | listKind: NodeList |
| 2371 | plural: nodes |
| 2372 | shortNames: |
| 2373 | - lhn |
| 2374 | singular: node |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 2375 | preserveUnknownFields: false |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2376 | scope: Namespaced |
| 2377 | versions: |
| 2378 | - additionalPrinterColumns: |
| 2379 | - description: Indicate whether the node is ready |
| 2380 | jsonPath: .status.conditions['Ready']['status'] |
| 2381 | name: Ready |
| 2382 | type: string |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 2383 | - description: Indicate whether the user disabled/enabled replica scheduling for |
| 2384 | the node |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2385 | jsonPath: .spec.allowScheduling |
| 2386 | name: AllowScheduling |
| 2387 | type: boolean |
| 2388 | - description: Indicate whether Longhorn can schedule replicas on the node |
| 2389 | jsonPath: .status.conditions['Schedulable']['status'] |
| 2390 | name: Schedulable |
| 2391 | type: string |
| 2392 | - jsonPath: .metadata.creationTimestamp |
| 2393 | name: Age |
| 2394 | type: date |
| 2395 | name: v1beta1 |
| 2396 | schema: |
| 2397 | openAPIV3Schema: |
| 2398 | description: Node is where Longhorn stores Longhorn node object. |
| 2399 | properties: |
| 2400 | apiVersion: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 2401 | description: |- |
| 2402 | APIVersion defines the versioned schema of this representation of an object. |
| 2403 | Servers should convert recognized schemas to the latest internal value, and |
| 2404 | may reject unrecognized values. |
| 2405 | More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2406 | type: string |
| 2407 | kind: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 2408 | description: |- |
| 2409 | Kind is a string value representing the REST resource this object represents. |
| 2410 | Servers may infer this from the endpoint the client submits requests to. |
| 2411 | Cannot be updated. |
| 2412 | In CamelCase. |
| 2413 | More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2414 | type: string |
| 2415 | metadata: |
| 2416 | type: object |
| 2417 | spec: |
| 2418 | x-kubernetes-preserve-unknown-fields: true |
| 2419 | status: |
| 2420 | x-kubernetes-preserve-unknown-fields: true |
| 2421 | type: object |
| 2422 | served: true |
| 2423 | storage: false |
| 2424 | subresources: |
| 2425 | status: {} |
| 2426 | - additionalPrinterColumns: |
| 2427 | - description: Indicate whether the node is ready |
| 2428 | jsonPath: .status.conditions[?(@.type=='Ready')].status |
| 2429 | name: Ready |
| 2430 | type: string |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 2431 | - description: Indicate whether the user disabled/enabled replica scheduling for |
| 2432 | the node |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2433 | jsonPath: .spec.allowScheduling |
| 2434 | name: AllowScheduling |
| 2435 | type: boolean |
| 2436 | - description: Indicate whether Longhorn can schedule replicas on the node |
| 2437 | jsonPath: .status.conditions[?(@.type=='Schedulable')].status |
| 2438 | name: Schedulable |
| 2439 | type: string |
| 2440 | - jsonPath: .metadata.creationTimestamp |
| 2441 | name: Age |
| 2442 | type: date |
| 2443 | name: v1beta2 |
| 2444 | schema: |
| 2445 | openAPIV3Schema: |
| 2446 | description: Node is where Longhorn stores Longhorn node object. |
| 2447 | properties: |
| 2448 | apiVersion: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 2449 | description: |- |
| 2450 | APIVersion defines the versioned schema of this representation of an object. |
| 2451 | Servers should convert recognized schemas to the latest internal value, and |
| 2452 | may reject unrecognized values. |
| 2453 | More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2454 | type: string |
| 2455 | kind: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 2456 | description: |- |
| 2457 | Kind is a string value representing the REST resource this object represents. |
| 2458 | Servers may infer this from the endpoint the client submits requests to. |
| 2459 | Cannot be updated. |
| 2460 | In CamelCase. |
| 2461 | More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2462 | type: string |
| 2463 | metadata: |
| 2464 | type: object |
| 2465 | spec: |
| 2466 | description: NodeSpec defines the desired state of the Longhorn node |
| 2467 | properties: |
| 2468 | allowScheduling: |
| 2469 | type: boolean |
| 2470 | disks: |
| 2471 | additionalProperties: |
| 2472 | properties: |
| 2473 | allowScheduling: |
| 2474 | type: boolean |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 2475 | diskDriver: |
| 2476 | enum: |
| 2477 | - "" |
| 2478 | - auto |
| 2479 | - aio |
| 2480 | type: string |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 2481 | diskType: |
| 2482 | enum: |
| 2483 | - filesystem |
| 2484 | - block |
| 2485 | type: string |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2486 | evictionRequested: |
| 2487 | type: boolean |
| 2488 | path: |
| 2489 | type: string |
| 2490 | storageReserved: |
| 2491 | format: int64 |
| 2492 | type: integer |
| 2493 | tags: |
| 2494 | items: |
| 2495 | type: string |
| 2496 | type: array |
| 2497 | type: object |
| 2498 | type: object |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2499 | evictionRequested: |
| 2500 | type: boolean |
| Giorgi Lekveishvili | 285ab62 | 2023-11-22 13:50:45 +0400 | [diff] [blame] | 2501 | instanceManagerCPURequest: |
| 2502 | type: integer |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2503 | name: |
| 2504 | type: string |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2505 | tags: |
| 2506 | items: |
| 2507 | type: string |
| 2508 | type: array |
| 2509 | type: object |
| 2510 | status: |
| 2511 | description: NodeStatus defines the observed state of the Longhorn node |
| 2512 | properties: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 2513 | autoEvicting: |
| 2514 | type: boolean |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2515 | conditions: |
| 2516 | items: |
| 2517 | properties: |
| 2518 | lastProbeTime: |
| 2519 | description: Last time we probed the condition. |
| 2520 | type: string |
| 2521 | lastTransitionTime: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 2522 | description: Last time the condition transitioned from one status |
| 2523 | to another. |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2524 | type: string |
| 2525 | message: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 2526 | description: Human-readable message indicating details about |
| 2527 | last transition. |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2528 | type: string |
| 2529 | reason: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 2530 | description: Unique, one-word, CamelCase reason for the condition's |
| 2531 | last transition. |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2532 | type: string |
| 2533 | status: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 2534 | description: |- |
| 2535 | Status is the status of the condition. |
| 2536 | Can be True, False, Unknown. |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2537 | type: string |
| 2538 | type: |
| 2539 | description: Type is the type of the condition. |
| 2540 | type: string |
| 2541 | type: object |
| 2542 | nullable: true |
| 2543 | type: array |
| 2544 | diskStatus: |
| 2545 | additionalProperties: |
| 2546 | properties: |
| 2547 | conditions: |
| 2548 | items: |
| 2549 | properties: |
| 2550 | lastProbeTime: |
| 2551 | description: Last time we probed the condition. |
| 2552 | type: string |
| 2553 | lastTransitionTime: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 2554 | description: Last time the condition transitioned from |
| 2555 | one status to another. |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2556 | type: string |
| 2557 | message: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 2558 | description: Human-readable message indicating details |
| 2559 | about last transition. |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2560 | type: string |
| 2561 | reason: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 2562 | description: Unique, one-word, CamelCase reason for the |
| 2563 | condition's last transition. |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2564 | type: string |
| 2565 | status: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 2566 | description: |- |
| 2567 | Status is the status of the condition. |
| 2568 | Can be True, False, Unknown. |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2569 | type: string |
| 2570 | type: |
| 2571 | description: Type is the type of the condition. |
| 2572 | type: string |
| 2573 | type: object |
| 2574 | nullable: true |
| 2575 | type: array |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 2576 | diskDriver: |
| 2577 | type: string |
| 2578 | diskName: |
| 2579 | type: string |
| 2580 | diskPath: |
| 2581 | type: string |
| Giorgi Lekveishvili | 285ab62 | 2023-11-22 13:50:45 +0400 | [diff] [blame] | 2582 | diskType: |
| 2583 | type: string |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2584 | diskUUID: |
| 2585 | type: string |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 2586 | filesystemType: |
| 2587 | type: string |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 2588 | instanceManagerName: |
| 2589 | type: string |
| gio | 2539d9e | 2025-05-22 12:19:30 +0400 | [diff] [blame^] | 2590 | scheduledBackingImage: |
| 2591 | additionalProperties: |
| 2592 | format: int64 |
| 2593 | type: integer |
| 2594 | nullable: true |
| 2595 | type: object |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2596 | scheduledReplica: |
| 2597 | additionalProperties: |
| 2598 | format: int64 |
| 2599 | type: integer |
| 2600 | nullable: true |
| 2601 | type: object |
| 2602 | storageAvailable: |
| 2603 | format: int64 |
| 2604 | type: integer |
| 2605 | storageMaximum: |
| 2606 | format: int64 |
| 2607 | type: integer |
| 2608 | storageScheduled: |
| 2609 | format: int64 |
| 2610 | type: integer |
| 2611 | type: object |
| 2612 | nullable: true |
| 2613 | type: object |
| 2614 | region: |
| 2615 | type: string |
| 2616 | snapshotCheckStatus: |
| 2617 | properties: |
| 2618 | lastPeriodicCheckedAt: |
| 2619 | format: date-time |
| 2620 | type: string |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2621 | type: object |
| 2622 | zone: |
| 2623 | type: string |
| 2624 | type: object |
| 2625 | type: object |
| 2626 | served: true |
| 2627 | storage: true |
| 2628 | subresources: |
| 2629 | status: {} |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2630 | --- |
| 2631 | apiVersion: apiextensions.k8s.io/v1 |
| 2632 | kind: CustomResourceDefinition |
| 2633 | metadata: |
| 2634 | annotations: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 2635 | controller-gen.kubebuilder.io/version: v0.15.0 |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2636 | labels: {{- include "longhorn.labels" . | nindent 4 }} |
| 2637 | longhorn-manager: "" |
| 2638 | name: orphans.longhorn.io |
| 2639 | spec: |
| 2640 | group: longhorn.io |
| 2641 | names: |
| 2642 | kind: Orphan |
| 2643 | listKind: OrphanList |
| 2644 | plural: orphans |
| 2645 | shortNames: |
| 2646 | - lho |
| 2647 | singular: orphan |
| 2648 | scope: Namespaced |
| 2649 | versions: |
| 2650 | - additionalPrinterColumns: |
| 2651 | - description: The type of the orphan |
| 2652 | jsonPath: .spec.orphanType |
| 2653 | name: Type |
| 2654 | type: string |
| 2655 | - description: The node that the orphan is on |
| 2656 | jsonPath: .spec.nodeID |
| 2657 | name: Node |
| 2658 | type: string |
| 2659 | name: v1beta2 |
| 2660 | schema: |
| 2661 | openAPIV3Schema: |
| 2662 | description: Orphan is where Longhorn stores orphan object. |
| 2663 | properties: |
| 2664 | apiVersion: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 2665 | description: |- |
| 2666 | APIVersion defines the versioned schema of this representation of an object. |
| 2667 | Servers should convert recognized schemas to the latest internal value, and |
| 2668 | may reject unrecognized values. |
| 2669 | More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2670 | type: string |
| 2671 | kind: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 2672 | description: |- |
| 2673 | Kind is a string value representing the REST resource this object represents. |
| 2674 | Servers may infer this from the endpoint the client submits requests to. |
| 2675 | Cannot be updated. |
| 2676 | In CamelCase. |
| 2677 | More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2678 | type: string |
| 2679 | metadata: |
| 2680 | type: object |
| 2681 | spec: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 2682 | description: OrphanSpec defines the desired state of the Longhorn orphaned |
| 2683 | data |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2684 | properties: |
| 2685 | nodeID: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 2686 | description: The node ID on which the controller is responsible to |
| 2687 | reconcile this orphan CR. |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2688 | type: string |
| 2689 | orphanType: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 2690 | description: |- |
| 2691 | The type of the orphaned data. |
| 2692 | Can be "replica". |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2693 | type: string |
| 2694 | parameters: |
| 2695 | additionalProperties: |
| 2696 | type: string |
| 2697 | description: The parameters of the orphaned data |
| 2698 | type: object |
| 2699 | type: object |
| 2700 | status: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 2701 | description: OrphanStatus defines the observed state of the Longhorn orphaned |
| 2702 | data |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2703 | properties: |
| 2704 | conditions: |
| 2705 | items: |
| 2706 | properties: |
| 2707 | lastProbeTime: |
| 2708 | description: Last time we probed the condition. |
| 2709 | type: string |
| 2710 | lastTransitionTime: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 2711 | description: Last time the condition transitioned from one status |
| 2712 | to another. |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2713 | type: string |
| 2714 | message: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 2715 | description: Human-readable message indicating details about |
| 2716 | last transition. |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2717 | type: string |
| 2718 | reason: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 2719 | description: Unique, one-word, CamelCase reason for the condition's |
| 2720 | last transition. |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2721 | type: string |
| 2722 | status: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 2723 | description: |- |
| 2724 | Status is the status of the condition. |
| 2725 | Can be True, False, Unknown. |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2726 | type: string |
| 2727 | type: |
| 2728 | description: Type is the type of the condition. |
| 2729 | type: string |
| 2730 | type: object |
| 2731 | nullable: true |
| 2732 | type: array |
| 2733 | ownerID: |
| 2734 | type: string |
| 2735 | type: object |
| 2736 | type: object |
| 2737 | served: true |
| 2738 | storage: true |
| 2739 | subresources: |
| 2740 | status: {} |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2741 | --- |
| 2742 | apiVersion: apiextensions.k8s.io/v1 |
| 2743 | kind: CustomResourceDefinition |
| 2744 | metadata: |
| 2745 | annotations: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 2746 | controller-gen.kubebuilder.io/version: v0.15.0 |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 2747 | labels: {{- include "longhorn.labels" . | nindent 4 }} |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2748 | longhorn-manager: "" |
| 2749 | name: recurringjobs.longhorn.io |
| 2750 | spec: |
| 2751 | group: longhorn.io |
| 2752 | names: |
| 2753 | kind: RecurringJob |
| 2754 | listKind: RecurringJobList |
| 2755 | plural: recurringjobs |
| 2756 | shortNames: |
| 2757 | - lhrj |
| 2758 | singular: recurringjob |
| 2759 | scope: Namespaced |
| 2760 | versions: |
| 2761 | - additionalPrinterColumns: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 2762 | - description: Sets groupings to the jobs. When set to "default" group will be |
| 2763 | added to the volume label when no other job label exist in volume |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2764 | jsonPath: .spec.groups |
| 2765 | name: Groups |
| 2766 | type: string |
| 2767 | - description: Should be one of "backup" or "snapshot" |
| 2768 | jsonPath: .spec.task |
| 2769 | name: Task |
| 2770 | type: string |
| 2771 | - description: The cron expression represents recurring job scheduling |
| 2772 | jsonPath: .spec.cron |
| 2773 | name: Cron |
| 2774 | type: string |
| 2775 | - description: The number of snapshots/backups to keep for the volume |
| 2776 | jsonPath: .spec.retain |
| 2777 | name: Retain |
| 2778 | type: integer |
| 2779 | - description: The concurrent job to run by each cron job |
| 2780 | jsonPath: .spec.concurrency |
| 2781 | name: Concurrency |
| 2782 | type: integer |
| 2783 | - jsonPath: .metadata.creationTimestamp |
| 2784 | name: Age |
| 2785 | type: date |
| 2786 | - description: Specify the labels |
| 2787 | jsonPath: .spec.labels |
| 2788 | name: Labels |
| 2789 | type: string |
| 2790 | name: v1beta1 |
| 2791 | schema: |
| 2792 | openAPIV3Schema: |
| 2793 | description: RecurringJob is where Longhorn stores recurring job object. |
| 2794 | properties: |
| 2795 | apiVersion: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 2796 | description: |- |
| 2797 | APIVersion defines the versioned schema of this representation of an object. |
| 2798 | Servers should convert recognized schemas to the latest internal value, and |
| 2799 | may reject unrecognized values. |
| 2800 | More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2801 | type: string |
| 2802 | kind: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 2803 | description: |- |
| 2804 | Kind is a string value representing the REST resource this object represents. |
| 2805 | Servers may infer this from the endpoint the client submits requests to. |
| 2806 | Cannot be updated. |
| 2807 | In CamelCase. |
| 2808 | More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2809 | type: string |
| 2810 | metadata: |
| 2811 | type: object |
| 2812 | spec: |
| 2813 | x-kubernetes-preserve-unknown-fields: true |
| 2814 | status: |
| 2815 | x-kubernetes-preserve-unknown-fields: true |
| 2816 | type: object |
| 2817 | served: true |
| 2818 | storage: false |
| 2819 | subresources: |
| 2820 | status: {} |
| 2821 | - additionalPrinterColumns: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 2822 | - description: Sets groupings to the jobs. When set to "default" group will be |
| 2823 | added to the volume label when no other job label exist in volume |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2824 | jsonPath: .spec.groups |
| 2825 | name: Groups |
| 2826 | type: string |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 2827 | - description: Should be one of "snapshot", "snapshot-force-create", "snapshot-cleanup", |
| 2828 | "snapshot-delete", "backup", "backup-force-create" or "filesystem-trim" |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2829 | jsonPath: .spec.task |
| 2830 | name: Task |
| 2831 | type: string |
| 2832 | - description: The cron expression represents recurring job scheduling |
| 2833 | jsonPath: .spec.cron |
| 2834 | name: Cron |
| 2835 | type: string |
| 2836 | - description: The number of snapshots/backups to keep for the volume |
| 2837 | jsonPath: .spec.retain |
| 2838 | name: Retain |
| 2839 | type: integer |
| 2840 | - description: The concurrent job to run by each cron job |
| 2841 | jsonPath: .spec.concurrency |
| 2842 | name: Concurrency |
| 2843 | type: integer |
| 2844 | - jsonPath: .metadata.creationTimestamp |
| 2845 | name: Age |
| 2846 | type: date |
| 2847 | - description: Specify the labels |
| 2848 | jsonPath: .spec.labels |
| 2849 | name: Labels |
| 2850 | type: string |
| 2851 | name: v1beta2 |
| 2852 | schema: |
| 2853 | openAPIV3Schema: |
| 2854 | description: RecurringJob is where Longhorn stores recurring job object. |
| 2855 | properties: |
| 2856 | apiVersion: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 2857 | description: |- |
| 2858 | APIVersion defines the versioned schema of this representation of an object. |
| 2859 | Servers should convert recognized schemas to the latest internal value, and |
| 2860 | may reject unrecognized values. |
| 2861 | More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2862 | type: string |
| 2863 | kind: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 2864 | description: |- |
| 2865 | Kind is a string value representing the REST resource this object represents. |
| 2866 | Servers may infer this from the endpoint the client submits requests to. |
| 2867 | Cannot be updated. |
| 2868 | In CamelCase. |
| 2869 | More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2870 | type: string |
| 2871 | metadata: |
| 2872 | type: object |
| 2873 | spec: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 2874 | description: RecurringJobSpec defines the desired state of the Longhorn |
| 2875 | recurring job |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2876 | properties: |
| 2877 | concurrency: |
| 2878 | description: The concurrency of taking the snapshot/backup. |
| 2879 | type: integer |
| 2880 | cron: |
| 2881 | description: The cron setting. |
| 2882 | type: string |
| 2883 | groups: |
| 2884 | description: The recurring job group. |
| 2885 | items: |
| 2886 | type: string |
| 2887 | type: array |
| 2888 | labels: |
| 2889 | additionalProperties: |
| 2890 | type: string |
| 2891 | description: The label of the snapshot/backup. |
| 2892 | type: object |
| 2893 | name: |
| 2894 | description: The recurring job name. |
| 2895 | type: string |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 2896 | parameters: |
| 2897 | additionalProperties: |
| 2898 | type: string |
| 2899 | description: |- |
| 2900 | The parameters of the snapshot/backup. |
| 2901 | Support parameters: "full-backup-interval". |
| 2902 | type: object |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2903 | retain: |
| 2904 | description: The retain count of the snapshot/backup. |
| 2905 | type: integer |
| 2906 | task: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 2907 | description: |- |
| 2908 | The recurring job task. |
| 2909 | Can be "snapshot", "snapshot-force-create", "snapshot-cleanup", "snapshot-delete", "backup", "backup-force-create" or "filesystem-trim" |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2910 | enum: |
| 2911 | - snapshot |
| Giorgi Lekveishvili | 285ab62 | 2023-11-22 13:50:45 +0400 | [diff] [blame] | 2912 | - snapshot-force-create |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2913 | - snapshot-cleanup |
| 2914 | - snapshot-delete |
| 2915 | - backup |
| Giorgi Lekveishvili | 285ab62 | 2023-11-22 13:50:45 +0400 | [diff] [blame] | 2916 | - backup-force-create |
| 2917 | - filesystem-trim |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2918 | type: string |
| 2919 | type: object |
| 2920 | status: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 2921 | description: RecurringJobStatus defines the observed state of the Longhorn |
| 2922 | recurring job |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2923 | properties: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 2924 | executionCount: |
| 2925 | description: The number of jobs that have been triggered. |
| 2926 | type: integer |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2927 | ownerID: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 2928 | description: The owner ID which is responsible to reconcile this recurring |
| 2929 | job CR. |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2930 | type: string |
| 2931 | type: object |
| 2932 | type: object |
| 2933 | served: true |
| 2934 | storage: true |
| 2935 | subresources: |
| 2936 | status: {} |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2937 | --- |
| 2938 | apiVersion: apiextensions.k8s.io/v1 |
| 2939 | kind: CustomResourceDefinition |
| 2940 | metadata: |
| 2941 | annotations: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 2942 | controller-gen.kubebuilder.io/version: v0.15.0 |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2943 | labels: {{- include "longhorn.labels" . | nindent 4 }} |
| 2944 | longhorn-manager: "" |
| 2945 | name: replicas.longhorn.io |
| 2946 | spec: |
| 2947 | group: longhorn.io |
| 2948 | names: |
| 2949 | kind: Replica |
| 2950 | listKind: ReplicaList |
| 2951 | plural: replicas |
| 2952 | shortNames: |
| 2953 | - lhr |
| 2954 | singular: replica |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 2955 | preserveUnknownFields: false |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2956 | scope: Namespaced |
| 2957 | versions: |
| 2958 | - additionalPrinterColumns: |
| 2959 | - description: The current state of the replica |
| 2960 | jsonPath: .status.currentState |
| 2961 | name: State |
| 2962 | type: string |
| 2963 | - description: The node that the replica is on |
| 2964 | jsonPath: .spec.nodeID |
| 2965 | name: Node |
| 2966 | type: string |
| 2967 | - description: The disk that the replica is on |
| 2968 | jsonPath: .spec.diskID |
| 2969 | name: Disk |
| 2970 | type: string |
| 2971 | - description: The instance manager of the replica |
| 2972 | jsonPath: .status.instanceManagerName |
| 2973 | name: InstanceManager |
| 2974 | type: string |
| 2975 | - description: The current image of the replica |
| 2976 | jsonPath: .status.currentImage |
| 2977 | name: Image |
| 2978 | type: string |
| 2979 | - jsonPath: .metadata.creationTimestamp |
| 2980 | name: Age |
| 2981 | type: date |
| 2982 | name: v1beta1 |
| 2983 | schema: |
| 2984 | openAPIV3Schema: |
| 2985 | description: Replica is where Longhorn stores replica object. |
| 2986 | properties: |
| 2987 | apiVersion: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 2988 | description: |- |
| 2989 | APIVersion defines the versioned schema of this representation of an object. |
| 2990 | Servers should convert recognized schemas to the latest internal value, and |
| 2991 | may reject unrecognized values. |
| 2992 | More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 2993 | type: string |
| 2994 | kind: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 2995 | description: |- |
| 2996 | Kind is a string value representing the REST resource this object represents. |
| 2997 | Servers may infer this from the endpoint the client submits requests to. |
| 2998 | Cannot be updated. |
| 2999 | In CamelCase. |
| 3000 | More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3001 | type: string |
| 3002 | metadata: |
| 3003 | type: object |
| 3004 | spec: |
| 3005 | x-kubernetes-preserve-unknown-fields: true |
| 3006 | status: |
| 3007 | x-kubernetes-preserve-unknown-fields: true |
| 3008 | type: object |
| 3009 | served: true |
| 3010 | storage: false |
| 3011 | subresources: |
| 3012 | status: {} |
| 3013 | - additionalPrinterColumns: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 3014 | - description: The data engine of the replica |
| 3015 | jsonPath: .spec.dataEngine |
| 3016 | name: Data Engine |
| 3017 | type: string |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3018 | - description: The current state of the replica |
| 3019 | jsonPath: .status.currentState |
| 3020 | name: State |
| 3021 | type: string |
| 3022 | - description: The node that the replica is on |
| 3023 | jsonPath: .spec.nodeID |
| 3024 | name: Node |
| 3025 | type: string |
| 3026 | - description: The disk that the replica is on |
| 3027 | jsonPath: .spec.diskID |
| 3028 | name: Disk |
| 3029 | type: string |
| 3030 | - description: The instance manager of the replica |
| 3031 | jsonPath: .status.instanceManagerName |
| 3032 | name: InstanceManager |
| 3033 | type: string |
| 3034 | - description: The current image of the replica |
| 3035 | jsonPath: .status.currentImage |
| 3036 | name: Image |
| 3037 | type: string |
| 3038 | - jsonPath: .metadata.creationTimestamp |
| 3039 | name: Age |
| 3040 | type: date |
| 3041 | name: v1beta2 |
| 3042 | schema: |
| 3043 | openAPIV3Schema: |
| 3044 | description: Replica is where Longhorn stores replica object. |
| 3045 | properties: |
| 3046 | apiVersion: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 3047 | description: |- |
| 3048 | APIVersion defines the versioned schema of this representation of an object. |
| 3049 | Servers should convert recognized schemas to the latest internal value, and |
| 3050 | may reject unrecognized values. |
| 3051 | More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3052 | type: string |
| 3053 | kind: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 3054 | description: |- |
| 3055 | Kind is a string value representing the REST resource this object represents. |
| 3056 | Servers may infer this from the endpoint the client submits requests to. |
| 3057 | Cannot be updated. |
| 3058 | In CamelCase. |
| 3059 | More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3060 | type: string |
| 3061 | metadata: |
| 3062 | type: object |
| 3063 | spec: |
| 3064 | description: ReplicaSpec defines the desired state of the Longhorn replica |
| 3065 | properties: |
| 3066 | active: |
| 3067 | type: boolean |
| Giorgi Lekveishvili | 285ab62 | 2023-11-22 13:50:45 +0400 | [diff] [blame] | 3068 | backendStoreDriver: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 3069 | description: Deprecated:Replaced by field `dataEngine`. |
| Giorgi Lekveishvili | 285ab62 | 2023-11-22 13:50:45 +0400 | [diff] [blame] | 3070 | type: string |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3071 | backingImage: |
| 3072 | type: string |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3073 | dataDirectoryName: |
| 3074 | type: string |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 3075 | dataEngine: |
| 3076 | enum: |
| 3077 | - v1 |
| 3078 | - v2 |
| 3079 | type: string |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3080 | desireState: |
| 3081 | type: string |
| 3082 | diskID: |
| 3083 | type: string |
| 3084 | diskPath: |
| 3085 | type: string |
| 3086 | engineImage: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 3087 | description: 'Deprecated: Replaced by field `image`.' |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3088 | type: string |
| 3089 | engineName: |
| 3090 | type: string |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 3091 | evictionRequested: |
| 3092 | type: boolean |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3093 | failedAt: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 3094 | description: |- |
| 3095 | FailedAt is set when a running replica fails or when a running engine is unable to use a replica for any reason. |
| 3096 | FailedAt indicates the time the failure occurred. When FailedAt is set, a replica is likely to have useful |
| 3097 | (though possibly stale) data. A replica with FailedAt set must be rebuilt from a non-failed replica (or it can |
| 3098 | be used in a salvage if all replicas are failed). FailedAt is cleared before a rebuild or salvage. FailedAt may |
| 3099 | be later than the corresponding entry in an engine's replicaTransitionTimeMap because it is set when the volume |
| 3100 | controller acknowledges the change. |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3101 | type: string |
| 3102 | hardNodeAffinity: |
| 3103 | type: string |
| 3104 | healthyAt: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 3105 | description: |- |
| 3106 | HealthyAt is set the first time a replica becomes read/write in an engine after creation or rebuild. HealthyAt |
| 3107 | indicates the time the last successful rebuild occurred. When HealthyAt is set, a replica is likely to have |
| 3108 | useful (though possibly stale) data. HealthyAt is cleared before a rebuild. HealthyAt may be later than the |
| 3109 | corresponding entry in an engine's replicaTransitionTimeMap because it is set when the volume controller |
| 3110 | acknowledges the change. |
| 3111 | type: string |
| 3112 | image: |
| 3113 | type: string |
| 3114 | lastFailedAt: |
| 3115 | description: |- |
| 3116 | LastFailedAt is always set at the same time as FailedAt. Unlike FailedAt, LastFailedAt is never cleared. |
| 3117 | LastFailedAt is not a reliable indicator of the state of a replica's data. For example, a replica with |
| 3118 | LastFailedAt may already be healthy and in use again. However, because it is never cleared, it can be compared to |
| 3119 | LastHealthyAt to help prevent dangerous replica deletion in some corner cases. LastFailedAt may be later than the |
| 3120 | corresponding entry in an engine's replicaTransitionTimeMap because it is set when the volume controller |
| 3121 | acknowledges the change. |
| 3122 | type: string |
| 3123 | lastHealthyAt: |
| 3124 | description: |- |
| 3125 | LastHealthyAt is set every time a replica becomes read/write in an engine. Unlike HealthyAt, LastHealthyAt is |
| 3126 | never cleared. LastHealthyAt is not a reliable indicator of the state of a replica's data. For example, a |
| 3127 | replica with LastHealthyAt set may be in the middle of a rebuild. However, because it is never cleared, it can be |
| 3128 | compared to LastFailedAt to help prevent dangerous replica deletion in some corner cases. LastHealthyAt may be |
| 3129 | later than the corresponding entry in an engine's replicaTransitionTimeMap because it is set when the volume |
| 3130 | controller acknowledges the change. |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3131 | type: string |
| 3132 | logRequested: |
| 3133 | type: boolean |
| gio | 2539d9e | 2025-05-22 12:19:30 +0400 | [diff] [blame^] | 3134 | migrationEngineName: |
| 3135 | description: |- |
| 3136 | MigrationEngineName is indicating the migrating engine which current connected to this replica. This is only |
| 3137 | used for live migration of v2 data engine |
| 3138 | type: string |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3139 | nodeID: |
| 3140 | type: string |
| 3141 | rebuildRetryCount: |
| 3142 | type: integer |
| 3143 | revisionCounterDisabled: |
| 3144 | type: boolean |
| 3145 | salvageRequested: |
| 3146 | type: boolean |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 3147 | snapshotMaxCount: |
| 3148 | type: integer |
| 3149 | snapshotMaxSize: |
| 3150 | format: int64 |
| 3151 | type: string |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3152 | unmapMarkDiskChainRemovedEnabled: |
| 3153 | type: boolean |
| 3154 | volumeName: |
| 3155 | type: string |
| 3156 | volumeSize: |
| 3157 | format: int64 |
| 3158 | type: string |
| 3159 | type: object |
| 3160 | status: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 3161 | description: ReplicaStatus defines the observed state of the Longhorn |
| 3162 | replica |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3163 | properties: |
| 3164 | conditions: |
| 3165 | items: |
| 3166 | properties: |
| 3167 | lastProbeTime: |
| 3168 | description: Last time we probed the condition. |
| 3169 | type: string |
| 3170 | lastTransitionTime: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 3171 | description: Last time the condition transitioned from one status |
| 3172 | to another. |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3173 | type: string |
| 3174 | message: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 3175 | description: Human-readable message indicating details about |
| 3176 | last transition. |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3177 | type: string |
| 3178 | reason: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 3179 | description: Unique, one-word, CamelCase reason for the condition's |
| 3180 | last transition. |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3181 | type: string |
| 3182 | status: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 3183 | description: |- |
| 3184 | Status is the status of the condition. |
| 3185 | Can be True, False, Unknown. |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3186 | type: string |
| 3187 | type: |
| 3188 | description: Type is the type of the condition. |
| 3189 | type: string |
| 3190 | type: object |
| 3191 | nullable: true |
| 3192 | type: array |
| 3193 | currentImage: |
| 3194 | type: string |
| 3195 | currentState: |
| 3196 | type: string |
| 3197 | evictionRequested: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 3198 | description: 'Deprecated: Replaced by field `spec.evictionRequested`.' |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3199 | type: boolean |
| 3200 | instanceManagerName: |
| 3201 | type: string |
| 3202 | ip: |
| 3203 | type: string |
| 3204 | logFetched: |
| 3205 | type: boolean |
| 3206 | ownerID: |
| 3207 | type: string |
| 3208 | port: |
| 3209 | type: integer |
| 3210 | salvageExecuted: |
| 3211 | type: boolean |
| 3212 | started: |
| 3213 | type: boolean |
| 3214 | storageIP: |
| 3215 | type: string |
| 3216 | type: object |
| 3217 | type: object |
| 3218 | served: true |
| 3219 | storage: true |
| 3220 | subresources: |
| 3221 | status: {} |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3222 | --- |
| 3223 | apiVersion: apiextensions.k8s.io/v1 |
| 3224 | kind: CustomResourceDefinition |
| 3225 | metadata: |
| 3226 | annotations: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 3227 | controller-gen.kubebuilder.io/version: v0.15.0 |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3228 | labels: {{- include "longhorn.labels" . | nindent 4 }} |
| 3229 | longhorn-manager: "" |
| 3230 | name: settings.longhorn.io |
| 3231 | spec: |
| 3232 | group: longhorn.io |
| 3233 | names: |
| 3234 | kind: Setting |
| 3235 | listKind: SettingList |
| 3236 | plural: settings |
| 3237 | shortNames: |
| 3238 | - lhs |
| 3239 | singular: setting |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 3240 | preserveUnknownFields: false |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3241 | scope: Namespaced |
| 3242 | versions: |
| 3243 | - additionalPrinterColumns: |
| 3244 | - description: The value of the setting |
| 3245 | jsonPath: .value |
| 3246 | name: Value |
| 3247 | type: string |
| 3248 | - jsonPath: .metadata.creationTimestamp |
| 3249 | name: Age |
| 3250 | type: date |
| 3251 | name: v1beta1 |
| 3252 | schema: |
| 3253 | openAPIV3Schema: |
| 3254 | description: Setting is where Longhorn stores setting object. |
| 3255 | properties: |
| 3256 | apiVersion: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 3257 | description: |- |
| 3258 | APIVersion defines the versioned schema of this representation of an object. |
| 3259 | Servers should convert recognized schemas to the latest internal value, and |
| 3260 | may reject unrecognized values. |
| 3261 | More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3262 | type: string |
| 3263 | kind: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 3264 | description: |- |
| 3265 | Kind is a string value representing the REST resource this object represents. |
| 3266 | Servers may infer this from the endpoint the client submits requests to. |
| 3267 | Cannot be updated. |
| 3268 | In CamelCase. |
| 3269 | More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3270 | type: string |
| 3271 | metadata: |
| 3272 | type: object |
| 3273 | value: |
| 3274 | type: string |
| 3275 | required: |
| 3276 | - value |
| 3277 | type: object |
| 3278 | served: true |
| 3279 | storage: false |
| 3280 | subresources: |
| 3281 | status: {} |
| 3282 | - additionalPrinterColumns: |
| 3283 | - description: The value of the setting |
| 3284 | jsonPath: .value |
| 3285 | name: Value |
| 3286 | type: string |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 3287 | - description: The setting is applied |
| 3288 | jsonPath: .status.applied |
| 3289 | name: Applied |
| 3290 | type: boolean |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3291 | - jsonPath: .metadata.creationTimestamp |
| 3292 | name: Age |
| 3293 | type: date |
| 3294 | name: v1beta2 |
| 3295 | schema: |
| 3296 | openAPIV3Schema: |
| 3297 | description: Setting is where Longhorn stores setting object. |
| 3298 | properties: |
| 3299 | apiVersion: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 3300 | description: |- |
| 3301 | APIVersion defines the versioned schema of this representation of an object. |
| 3302 | Servers should convert recognized schemas to the latest internal value, and |
| 3303 | may reject unrecognized values. |
| 3304 | More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3305 | type: string |
| 3306 | kind: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 3307 | description: |- |
| 3308 | Kind is a string value representing the REST resource this object represents. |
| 3309 | Servers may infer this from the endpoint the client submits requests to. |
| 3310 | Cannot be updated. |
| 3311 | In CamelCase. |
| 3312 | More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3313 | type: string |
| 3314 | metadata: |
| 3315 | type: object |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 3316 | status: |
| 3317 | description: The status of the setting. |
| 3318 | properties: |
| 3319 | applied: |
| 3320 | description: The setting is applied. |
| 3321 | type: boolean |
| 3322 | required: |
| 3323 | - applied |
| 3324 | type: object |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3325 | value: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 3326 | description: The value of the setting. |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3327 | type: string |
| 3328 | required: |
| 3329 | - value |
| 3330 | type: object |
| 3331 | served: true |
| 3332 | storage: true |
| 3333 | subresources: |
| 3334 | status: {} |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3335 | --- |
| 3336 | apiVersion: apiextensions.k8s.io/v1 |
| 3337 | kind: CustomResourceDefinition |
| 3338 | metadata: |
| 3339 | annotations: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 3340 | controller-gen.kubebuilder.io/version: v0.15.0 |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3341 | labels: {{- include "longhorn.labels" . | nindent 4 }} |
| 3342 | longhorn-manager: "" |
| 3343 | name: sharemanagers.longhorn.io |
| 3344 | spec: |
| 3345 | group: longhorn.io |
| 3346 | names: |
| 3347 | kind: ShareManager |
| 3348 | listKind: ShareManagerList |
| 3349 | plural: sharemanagers |
| 3350 | shortNames: |
| 3351 | - lhsm |
| 3352 | singular: sharemanager |
| 3353 | scope: Namespaced |
| 3354 | versions: |
| 3355 | - additionalPrinterColumns: |
| 3356 | - description: The state of the share manager |
| 3357 | jsonPath: .status.state |
| 3358 | name: State |
| 3359 | type: string |
| 3360 | - description: The node that the share manager is owned by |
| 3361 | jsonPath: .status.ownerID |
| 3362 | name: Node |
| 3363 | type: string |
| 3364 | - jsonPath: .metadata.creationTimestamp |
| 3365 | name: Age |
| 3366 | type: date |
| 3367 | name: v1beta1 |
| 3368 | schema: |
| 3369 | openAPIV3Schema: |
| 3370 | description: ShareManager is where Longhorn stores share manager object. |
| 3371 | properties: |
| 3372 | apiVersion: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 3373 | description: |- |
| 3374 | APIVersion defines the versioned schema of this representation of an object. |
| 3375 | Servers should convert recognized schemas to the latest internal value, and |
| 3376 | may reject unrecognized values. |
| 3377 | More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3378 | type: string |
| 3379 | kind: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 3380 | description: |- |
| 3381 | Kind is a string value representing the REST resource this object represents. |
| 3382 | Servers may infer this from the endpoint the client submits requests to. |
| 3383 | Cannot be updated. |
| 3384 | In CamelCase. |
| 3385 | More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3386 | type: string |
| 3387 | metadata: |
| 3388 | type: object |
| 3389 | spec: |
| 3390 | x-kubernetes-preserve-unknown-fields: true |
| 3391 | status: |
| 3392 | x-kubernetes-preserve-unknown-fields: true |
| 3393 | type: object |
| 3394 | served: true |
| 3395 | storage: false |
| 3396 | subresources: |
| 3397 | status: {} |
| 3398 | - additionalPrinterColumns: |
| 3399 | - description: The state of the share manager |
| 3400 | jsonPath: .status.state |
| 3401 | name: State |
| 3402 | type: string |
| 3403 | - description: The node that the share manager is owned by |
| 3404 | jsonPath: .status.ownerID |
| 3405 | name: Node |
| 3406 | type: string |
| 3407 | - jsonPath: .metadata.creationTimestamp |
| 3408 | name: Age |
| 3409 | type: date |
| 3410 | name: v1beta2 |
| 3411 | schema: |
| 3412 | openAPIV3Schema: |
| 3413 | description: ShareManager is where Longhorn stores share manager object. |
| 3414 | properties: |
| 3415 | apiVersion: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 3416 | description: |- |
| 3417 | APIVersion defines the versioned schema of this representation of an object. |
| 3418 | Servers should convert recognized schemas to the latest internal value, and |
| 3419 | may reject unrecognized values. |
| 3420 | More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3421 | type: string |
| 3422 | kind: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 3423 | description: |- |
| 3424 | Kind is a string value representing the REST resource this object represents. |
| 3425 | Servers may infer this from the endpoint the client submits requests to. |
| 3426 | Cannot be updated. |
| 3427 | In CamelCase. |
| 3428 | More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3429 | type: string |
| 3430 | metadata: |
| 3431 | type: object |
| 3432 | spec: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 3433 | description: ShareManagerSpec defines the desired state of the Longhorn |
| 3434 | share manager |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3435 | properties: |
| 3436 | image: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 3437 | description: Share manager image used for creating a share manager |
| 3438 | pod |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3439 | type: string |
| 3440 | type: object |
| 3441 | status: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 3442 | description: ShareManagerStatus defines the observed state of the Longhorn |
| 3443 | share manager |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3444 | properties: |
| 3445 | endpoint: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 3446 | description: NFS endpoint that can access the mounted filesystem of |
| 3447 | the volume |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3448 | type: string |
| 3449 | ownerID: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 3450 | description: The node ID on which the controller is responsible to |
| 3451 | reconcile this share manager resource |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3452 | type: string |
| 3453 | state: |
| Giorgi Lekveishvili | 285ab62 | 2023-11-22 13:50:45 +0400 | [diff] [blame] | 3454 | description: The state of the share manager resource |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3455 | type: string |
| 3456 | type: object |
| 3457 | type: object |
| 3458 | served: true |
| 3459 | storage: true |
| 3460 | subresources: |
| 3461 | status: {} |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3462 | --- |
| 3463 | apiVersion: apiextensions.k8s.io/v1 |
| 3464 | kind: CustomResourceDefinition |
| 3465 | metadata: |
| 3466 | annotations: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 3467 | controller-gen.kubebuilder.io/version: v0.15.0 |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3468 | labels: {{- include "longhorn.labels" . | nindent 4 }} |
| 3469 | longhorn-manager: "" |
| 3470 | name: snapshots.longhorn.io |
| 3471 | spec: |
| 3472 | group: longhorn.io |
| 3473 | names: |
| 3474 | kind: Snapshot |
| 3475 | listKind: SnapshotList |
| 3476 | plural: snapshots |
| 3477 | shortNames: |
| 3478 | - lhsnap |
| 3479 | singular: snapshot |
| 3480 | scope: Namespaced |
| 3481 | versions: |
| 3482 | - additionalPrinterColumns: |
| 3483 | - description: The volume that this snapshot belongs to |
| 3484 | jsonPath: .spec.volume |
| 3485 | name: Volume |
| 3486 | type: string |
| 3487 | - description: Timestamp when the point-in-time snapshot was taken |
| 3488 | jsonPath: .status.creationTime |
| 3489 | name: CreationTime |
| 3490 | type: string |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 3491 | - description: Indicates if the snapshot is ready to be used to restore/backup |
| 3492 | a volume |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3493 | jsonPath: .status.readyToUse |
| 3494 | name: ReadyToUse |
| 3495 | type: boolean |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 3496 | - description: Represents the minimum size of volume required to rehydrate from |
| 3497 | this snapshot |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3498 | jsonPath: .status.restoreSize |
| 3499 | name: RestoreSize |
| 3500 | type: string |
| 3501 | - description: The actual size of the snapshot |
| 3502 | jsonPath: .status.size |
| 3503 | name: Size |
| 3504 | type: string |
| 3505 | - jsonPath: .metadata.creationTimestamp |
| 3506 | name: Age |
| 3507 | type: date |
| 3508 | name: v1beta2 |
| 3509 | schema: |
| 3510 | openAPIV3Schema: |
| 3511 | description: Snapshot is the Schema for the snapshots API |
| 3512 | properties: |
| 3513 | apiVersion: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 3514 | description: |- |
| 3515 | APIVersion defines the versioned schema of this representation of an object. |
| 3516 | Servers should convert recognized schemas to the latest internal value, and |
| 3517 | may reject unrecognized values. |
| 3518 | More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3519 | type: string |
| 3520 | kind: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 3521 | description: |- |
| 3522 | Kind is a string value representing the REST resource this object represents. |
| 3523 | Servers may infer this from the endpoint the client submits requests to. |
| 3524 | Cannot be updated. |
| 3525 | In CamelCase. |
| 3526 | More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3527 | type: string |
| 3528 | metadata: |
| 3529 | type: object |
| 3530 | spec: |
| 3531 | description: SnapshotSpec defines the desired state of Longhorn Snapshot |
| 3532 | properties: |
| 3533 | createSnapshot: |
| 3534 | description: require creating a new snapshot |
| 3535 | type: boolean |
| 3536 | labels: |
| 3537 | additionalProperties: |
| 3538 | type: string |
| 3539 | description: The labels of snapshot |
| 3540 | nullable: true |
| 3541 | type: object |
| 3542 | volume: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 3543 | description: |- |
| 3544 | the volume that this snapshot belongs to. |
| 3545 | This field is immutable after creation. |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3546 | type: string |
| 3547 | required: |
| 3548 | - volume |
| 3549 | type: object |
| 3550 | status: |
| 3551 | description: SnapshotStatus defines the observed state of Longhorn Snapshot |
| 3552 | properties: |
| 3553 | checksum: |
| 3554 | type: string |
| 3555 | children: |
| 3556 | additionalProperties: |
| 3557 | type: boolean |
| 3558 | nullable: true |
| 3559 | type: object |
| 3560 | creationTime: |
| 3561 | type: string |
| 3562 | error: |
| 3563 | type: string |
| 3564 | labels: |
| 3565 | additionalProperties: |
| 3566 | type: string |
| 3567 | nullable: true |
| 3568 | type: object |
| 3569 | markRemoved: |
| 3570 | type: boolean |
| 3571 | ownerID: |
| 3572 | type: string |
| 3573 | parent: |
| 3574 | type: string |
| 3575 | readyToUse: |
| 3576 | type: boolean |
| 3577 | restoreSize: |
| 3578 | format: int64 |
| 3579 | type: integer |
| 3580 | size: |
| 3581 | format: int64 |
| 3582 | type: integer |
| 3583 | userCreated: |
| 3584 | type: boolean |
| 3585 | type: object |
| 3586 | type: object |
| 3587 | served: true |
| 3588 | storage: true |
| 3589 | subresources: |
| 3590 | status: {} |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3591 | --- |
| 3592 | apiVersion: apiextensions.k8s.io/v1 |
| 3593 | kind: CustomResourceDefinition |
| 3594 | metadata: |
| 3595 | annotations: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 3596 | controller-gen.kubebuilder.io/version: v0.15.0 |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3597 | labels: {{- include "longhorn.labels" . | nindent 4 }} |
| 3598 | longhorn-manager: "" |
| 3599 | name: supportbundles.longhorn.io |
| 3600 | spec: |
| 3601 | group: longhorn.io |
| 3602 | names: |
| 3603 | kind: SupportBundle |
| 3604 | listKind: SupportBundleList |
| 3605 | plural: supportbundles |
| 3606 | shortNames: |
| 3607 | - lhbundle |
| 3608 | singular: supportbundle |
| 3609 | scope: Namespaced |
| 3610 | versions: |
| 3611 | - additionalPrinterColumns: |
| 3612 | - description: The state of the support bundle |
| 3613 | jsonPath: .status.state |
| 3614 | name: State |
| 3615 | type: string |
| 3616 | - description: The issue URL |
| 3617 | jsonPath: .spec.issueURL |
| 3618 | name: Issue |
| 3619 | type: string |
| 3620 | - description: A brief description of the issue |
| 3621 | jsonPath: .spec.description |
| 3622 | name: Description |
| 3623 | type: string |
| 3624 | - jsonPath: .metadata.creationTimestamp |
| 3625 | name: Age |
| 3626 | type: date |
| 3627 | name: v1beta2 |
| 3628 | schema: |
| 3629 | openAPIV3Schema: |
| 3630 | description: SupportBundle is where Longhorn stores support bundle object |
| 3631 | properties: |
| 3632 | apiVersion: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 3633 | description: |- |
| 3634 | APIVersion defines the versioned schema of this representation of an object. |
| 3635 | Servers should convert recognized schemas to the latest internal value, and |
| 3636 | may reject unrecognized values. |
| 3637 | More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3638 | type: string |
| 3639 | kind: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 3640 | description: |- |
| 3641 | Kind is a string value representing the REST resource this object represents. |
| 3642 | Servers may infer this from the endpoint the client submits requests to. |
| 3643 | Cannot be updated. |
| 3644 | In CamelCase. |
| 3645 | More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3646 | type: string |
| 3647 | metadata: |
| 3648 | type: object |
| 3649 | spec: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 3650 | description: SupportBundleSpec defines the desired state of the Longhorn |
| 3651 | SupportBundle |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3652 | properties: |
| 3653 | description: |
| 3654 | description: A brief description of the issue |
| 3655 | type: string |
| 3656 | issueURL: |
| 3657 | description: The issue URL |
| 3658 | nullable: true |
| 3659 | type: string |
| 3660 | nodeID: |
| 3661 | description: The preferred responsible controller node ID. |
| 3662 | type: string |
| 3663 | required: |
| 3664 | - description |
| 3665 | type: object |
| 3666 | status: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 3667 | description: SupportBundleStatus defines the observed state of the Longhorn |
| 3668 | SupportBundle |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3669 | properties: |
| 3670 | conditions: |
| 3671 | items: |
| 3672 | properties: |
| 3673 | lastProbeTime: |
| 3674 | description: Last time we probed the condition. |
| 3675 | type: string |
| 3676 | lastTransitionTime: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 3677 | description: Last time the condition transitioned from one status |
| 3678 | to another. |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3679 | type: string |
| 3680 | message: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 3681 | description: Human-readable message indicating details about |
| 3682 | last transition. |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3683 | type: string |
| 3684 | reason: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 3685 | description: Unique, one-word, CamelCase reason for the condition's |
| 3686 | last transition. |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3687 | type: string |
| 3688 | status: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 3689 | description: |- |
| 3690 | Status is the status of the condition. |
| 3691 | Can be True, False, Unknown. |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3692 | type: string |
| 3693 | type: |
| 3694 | description: Type is the type of the condition. |
| 3695 | type: string |
| 3696 | type: object |
| 3697 | type: array |
| 3698 | filename: |
| 3699 | type: string |
| 3700 | filesize: |
| 3701 | format: int64 |
| 3702 | type: integer |
| 3703 | image: |
| 3704 | description: The support bundle manager image |
| 3705 | type: string |
| 3706 | managerIP: |
| 3707 | description: The support bundle manager IP |
| 3708 | type: string |
| 3709 | ownerID: |
| 3710 | description: The current responsible controller node ID |
| 3711 | type: string |
| 3712 | progress: |
| 3713 | type: integer |
| 3714 | state: |
| 3715 | type: string |
| 3716 | type: object |
| 3717 | type: object |
| 3718 | served: true |
| 3719 | storage: true |
| 3720 | subresources: |
| 3721 | status: {} |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3722 | --- |
| 3723 | apiVersion: apiextensions.k8s.io/v1 |
| 3724 | kind: CustomResourceDefinition |
| 3725 | metadata: |
| 3726 | annotations: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 3727 | controller-gen.kubebuilder.io/version: v0.15.0 |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3728 | labels: {{- include "longhorn.labels" . | nindent 4 }} |
| 3729 | longhorn-manager: "" |
| 3730 | name: systembackups.longhorn.io |
| 3731 | spec: |
| 3732 | group: longhorn.io |
| 3733 | names: |
| 3734 | kind: SystemBackup |
| 3735 | listKind: SystemBackupList |
| 3736 | plural: systembackups |
| 3737 | shortNames: |
| 3738 | - lhsb |
| 3739 | singular: systembackup |
| 3740 | scope: Namespaced |
| 3741 | versions: |
| 3742 | - additionalPrinterColumns: |
| 3743 | - description: The system backup Longhorn version |
| 3744 | jsonPath: .status.version |
| 3745 | name: Version |
| 3746 | type: string |
| 3747 | - description: The system backup state |
| 3748 | jsonPath: .status.state |
| 3749 | name: State |
| 3750 | type: string |
| 3751 | - description: The system backup creation time |
| 3752 | jsonPath: .status.createdAt |
| 3753 | name: Created |
| 3754 | type: string |
| 3755 | - description: The last time that the system backup was synced into the cluster |
| 3756 | jsonPath: .status.lastSyncedAt |
| 3757 | name: LastSyncedAt |
| 3758 | type: string |
| 3759 | name: v1beta2 |
| 3760 | schema: |
| 3761 | openAPIV3Schema: |
| 3762 | description: SystemBackup is where Longhorn stores system backup object |
| 3763 | properties: |
| 3764 | apiVersion: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 3765 | description: |- |
| 3766 | APIVersion defines the versioned schema of this representation of an object. |
| 3767 | Servers should convert recognized schemas to the latest internal value, and |
| 3768 | may reject unrecognized values. |
| 3769 | More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3770 | type: string |
| 3771 | kind: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 3772 | description: |- |
| 3773 | Kind is a string value representing the REST resource this object represents. |
| 3774 | Servers may infer this from the endpoint the client submits requests to. |
| 3775 | Cannot be updated. |
| 3776 | In CamelCase. |
| 3777 | More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3778 | type: string |
| 3779 | metadata: |
| 3780 | type: object |
| 3781 | spec: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 3782 | description: SystemBackupSpec defines the desired state of the Longhorn |
| 3783 | SystemBackup |
| Giorgi Lekveishvili | 285ab62 | 2023-11-22 13:50:45 +0400 | [diff] [blame] | 3784 | properties: |
| 3785 | volumeBackupPolicy: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 3786 | description: |- |
| 3787 | The create volume backup policy |
| 3788 | Can be "if-not-present", "always" or "disabled" |
| Giorgi Lekveishvili | 285ab62 | 2023-11-22 13:50:45 +0400 | [diff] [blame] | 3789 | nullable: true |
| 3790 | type: string |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3791 | type: object |
| 3792 | status: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 3793 | description: SystemBackupStatus defines the observed state of the Longhorn |
| 3794 | SystemBackup |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3795 | properties: |
| 3796 | conditions: |
| 3797 | items: |
| 3798 | properties: |
| 3799 | lastProbeTime: |
| 3800 | description: Last time we probed the condition. |
| 3801 | type: string |
| 3802 | lastTransitionTime: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 3803 | description: Last time the condition transitioned from one status |
| 3804 | to another. |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3805 | type: string |
| 3806 | message: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 3807 | description: Human-readable message indicating details about |
| 3808 | last transition. |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3809 | type: string |
| 3810 | reason: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 3811 | description: Unique, one-word, CamelCase reason for the condition's |
| 3812 | last transition. |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3813 | type: string |
| 3814 | status: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 3815 | description: |- |
| 3816 | Status is the status of the condition. |
| 3817 | Can be True, False, Unknown. |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3818 | type: string |
| 3819 | type: |
| 3820 | description: Type is the type of the condition. |
| 3821 | type: string |
| 3822 | type: object |
| 3823 | nullable: true |
| 3824 | type: array |
| 3825 | createdAt: |
| 3826 | description: The system backup creation time. |
| 3827 | format: date-time |
| 3828 | type: string |
| 3829 | gitCommit: |
| 3830 | description: The saved Longhorn manager git commit. |
| 3831 | nullable: true |
| 3832 | type: string |
| 3833 | lastSyncedAt: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 3834 | description: The last time that the system backup was synced into |
| 3835 | the cluster. |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3836 | format: date-time |
| 3837 | nullable: true |
| 3838 | type: string |
| 3839 | managerImage: |
| 3840 | description: The saved manager image. |
| 3841 | type: string |
| 3842 | ownerID: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 3843 | description: The node ID of the responsible controller to reconcile |
| 3844 | this SystemBackup. |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3845 | type: string |
| 3846 | state: |
| 3847 | description: The system backup state. |
| 3848 | type: string |
| 3849 | version: |
| 3850 | description: The saved Longhorn version. |
| 3851 | nullable: true |
| 3852 | type: string |
| 3853 | type: object |
| 3854 | type: object |
| 3855 | served: true |
| 3856 | storage: true |
| 3857 | subresources: |
| 3858 | status: {} |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3859 | --- |
| 3860 | apiVersion: apiextensions.k8s.io/v1 |
| 3861 | kind: CustomResourceDefinition |
| 3862 | metadata: |
| 3863 | annotations: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 3864 | controller-gen.kubebuilder.io/version: v0.15.0 |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3865 | labels: {{- include "longhorn.labels" . | nindent 4 }} |
| 3866 | longhorn-manager: "" |
| 3867 | name: systemrestores.longhorn.io |
| 3868 | spec: |
| 3869 | group: longhorn.io |
| 3870 | names: |
| 3871 | kind: SystemRestore |
| 3872 | listKind: SystemRestoreList |
| 3873 | plural: systemrestores |
| 3874 | shortNames: |
| 3875 | - lhsr |
| 3876 | singular: systemrestore |
| 3877 | scope: Namespaced |
| 3878 | versions: |
| 3879 | - additionalPrinterColumns: |
| 3880 | - description: The system restore state |
| 3881 | jsonPath: .status.state |
| 3882 | name: State |
| 3883 | type: string |
| 3884 | - jsonPath: .metadata.creationTimestamp |
| 3885 | name: Age |
| 3886 | type: date |
| 3887 | name: v1beta2 |
| 3888 | schema: |
| 3889 | openAPIV3Schema: |
| 3890 | description: SystemRestore is where Longhorn stores system restore object |
| 3891 | properties: |
| 3892 | apiVersion: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 3893 | description: |- |
| 3894 | APIVersion defines the versioned schema of this representation of an object. |
| 3895 | Servers should convert recognized schemas to the latest internal value, and |
| 3896 | may reject unrecognized values. |
| 3897 | More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3898 | type: string |
| 3899 | kind: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 3900 | description: |- |
| 3901 | Kind is a string value representing the REST resource this object represents. |
| 3902 | Servers may infer this from the endpoint the client submits requests to. |
| 3903 | Cannot be updated. |
| 3904 | In CamelCase. |
| 3905 | More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3906 | type: string |
| 3907 | metadata: |
| 3908 | type: object |
| 3909 | spec: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 3910 | description: SystemRestoreSpec defines the desired state of the Longhorn |
| 3911 | SystemRestore |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3912 | properties: |
| 3913 | systemBackup: |
| 3914 | description: The system backup name in the object store. |
| 3915 | type: string |
| 3916 | required: |
| 3917 | - systemBackup |
| 3918 | type: object |
| 3919 | status: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 3920 | description: SystemRestoreStatus defines the observed state of the Longhorn |
| 3921 | SystemRestore |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3922 | properties: |
| 3923 | conditions: |
| 3924 | items: |
| 3925 | properties: |
| 3926 | lastProbeTime: |
| 3927 | description: Last time we probed the condition. |
| 3928 | type: string |
| 3929 | lastTransitionTime: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 3930 | description: Last time the condition transitioned from one status |
| 3931 | to another. |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3932 | type: string |
| 3933 | message: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 3934 | description: Human-readable message indicating details about |
| 3935 | last transition. |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3936 | type: string |
| 3937 | reason: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 3938 | description: Unique, one-word, CamelCase reason for the condition's |
| 3939 | last transition. |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3940 | type: string |
| 3941 | status: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 3942 | description: |- |
| 3943 | Status is the status of the condition. |
| 3944 | Can be True, False, Unknown. |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3945 | type: string |
| 3946 | type: |
| 3947 | description: Type is the type of the condition. |
| 3948 | type: string |
| 3949 | type: object |
| 3950 | nullable: true |
| 3951 | type: array |
| 3952 | ownerID: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 3953 | description: The node ID of the responsible controller to reconcile |
| 3954 | this SystemRestore. |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3955 | type: string |
| 3956 | sourceURL: |
| 3957 | description: The source system backup URL. |
| 3958 | type: string |
| 3959 | state: |
| 3960 | description: The system restore state. |
| 3961 | type: string |
| 3962 | type: object |
| 3963 | type: object |
| 3964 | served: true |
| 3965 | storage: true |
| 3966 | subresources: |
| 3967 | status: {} |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 3968 | --- |
| 3969 | apiVersion: apiextensions.k8s.io/v1 |
| 3970 | kind: CustomResourceDefinition |
| 3971 | metadata: |
| 3972 | annotations: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 3973 | controller-gen.kubebuilder.io/version: v0.15.0 |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 3974 | labels: {{- include "longhorn.labels" . | nindent 4 }} |
| 3975 | longhorn-manager: "" |
| 3976 | name: volumeattachments.longhorn.io |
| 3977 | spec: |
| 3978 | group: longhorn.io |
| 3979 | names: |
| 3980 | kind: VolumeAttachment |
| 3981 | listKind: VolumeAttachmentList |
| 3982 | plural: volumeattachments |
| 3983 | shortNames: |
| 3984 | - lhva |
| 3985 | singular: volumeattachment |
| 3986 | scope: Namespaced |
| 3987 | versions: |
| 3988 | - additionalPrinterColumns: |
| 3989 | - jsonPath: .metadata.creationTimestamp |
| 3990 | name: Age |
| 3991 | type: date |
| 3992 | name: v1beta2 |
| 3993 | schema: |
| 3994 | openAPIV3Schema: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 3995 | description: VolumeAttachment stores attachment information of a Longhorn |
| 3996 | volume |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 3997 | properties: |
| 3998 | apiVersion: |
| 3999 | description: |- |
| 4000 | APIVersion defines the versioned schema of this representation of an object. |
| 4001 | Servers should convert recognized schemas to the latest internal value, and |
| 4002 | may reject unrecognized values. |
| 4003 | More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
| 4004 | type: string |
| 4005 | kind: |
| 4006 | description: |- |
| 4007 | Kind is a string value representing the REST resource this object represents. |
| 4008 | Servers may infer this from the endpoint the client submits requests to. |
| 4009 | Cannot be updated. |
| 4010 | In CamelCase. |
| 4011 | More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
| 4012 | type: string |
| 4013 | metadata: |
| 4014 | type: object |
| 4015 | spec: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 4016 | description: VolumeAttachmentSpec defines the desired state of Longhorn |
| 4017 | VolumeAttachment |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 4018 | properties: |
| 4019 | attachmentTickets: |
| 4020 | additionalProperties: |
| 4021 | properties: |
| 4022 | generation: |
| 4023 | description: |- |
| 4024 | A sequence number representing a specific generation of the desired state. |
| 4025 | Populated by the system. Read-only. |
| 4026 | format: int64 |
| 4027 | type: integer |
| 4028 | id: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 4029 | description: The unique ID of this attachment. Used to differentiate |
| 4030 | different attachments of the same volume. |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 4031 | type: string |
| 4032 | nodeID: |
| 4033 | description: The node that this attachment is requesting |
| 4034 | type: string |
| 4035 | parameters: |
| 4036 | additionalProperties: |
| 4037 | type: string |
| 4038 | description: Optional additional parameter for this attachment |
| 4039 | type: object |
| 4040 | type: |
| 4041 | type: string |
| 4042 | type: object |
| 4043 | type: object |
| 4044 | volume: |
| 4045 | description: The name of Longhorn volume of this VolumeAttachment |
| 4046 | type: string |
| 4047 | required: |
| 4048 | - volume |
| 4049 | type: object |
| 4050 | status: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 4051 | description: VolumeAttachmentStatus defines the observed state of Longhorn |
| 4052 | VolumeAttachment |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 4053 | properties: |
| 4054 | attachmentTicketStatuses: |
| 4055 | additionalProperties: |
| 4056 | properties: |
| 4057 | conditions: |
| 4058 | description: Record any error when trying to fulfill this attachment |
| 4059 | items: |
| 4060 | properties: |
| 4061 | lastProbeTime: |
| 4062 | description: Last time we probed the condition. |
| 4063 | type: string |
| 4064 | lastTransitionTime: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 4065 | description: Last time the condition transitioned from |
| 4066 | one status to another. |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 4067 | type: string |
| 4068 | message: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 4069 | description: Human-readable message indicating details |
| 4070 | about last transition. |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 4071 | type: string |
| 4072 | reason: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 4073 | description: Unique, one-word, CamelCase reason for the |
| 4074 | condition's last transition. |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 4075 | type: string |
| 4076 | status: |
| 4077 | description: |- |
| 4078 | Status is the status of the condition. |
| 4079 | Can be True, False, Unknown. |
| 4080 | type: string |
| 4081 | type: |
| 4082 | description: Type is the type of the condition. |
| 4083 | type: string |
| 4084 | type: object |
| 4085 | nullable: true |
| 4086 | type: array |
| 4087 | generation: |
| 4088 | description: |- |
| 4089 | A sequence number representing a specific generation of the desired state. |
| 4090 | Populated by the system. Read-only. |
| 4091 | format: int64 |
| 4092 | type: integer |
| 4093 | id: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 4094 | description: The unique ID of this attachment. Used to differentiate |
| 4095 | different attachments of the same volume. |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 4096 | type: string |
| 4097 | satisfied: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 4098 | description: Indicate whether this attachment ticket has been |
| 4099 | satisfied |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 4100 | type: boolean |
| 4101 | required: |
| 4102 | - conditions |
| 4103 | - satisfied |
| 4104 | type: object |
| 4105 | type: object |
| 4106 | type: object |
| 4107 | type: object |
| 4108 | served: true |
| 4109 | storage: true |
| 4110 | subresources: |
| 4111 | status: {} |
| 4112 | --- |
| 4113 | apiVersion: apiextensions.k8s.io/v1 |
| 4114 | kind: CustomResourceDefinition |
| 4115 | metadata: |
| 4116 | annotations: |
| 4117 | controller-gen.kubebuilder.io/version: v0.15.0 |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 4118 | labels: {{- include "longhorn.labels" . | nindent 4 }} |
| 4119 | longhorn-manager: "" |
| 4120 | name: volumes.longhorn.io |
| 4121 | spec: |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 4122 | conversion: |
| 4123 | strategy: Webhook |
| 4124 | webhook: |
| 4125 | clientConfig: |
| 4126 | service: |
| 4127 | name: longhorn-conversion-webhook |
| 4128 | namespace: {{ include "release_namespace" . }} |
| 4129 | path: /v1/webhook/conversion |
| Giorgi Lekveishvili | 285ab62 | 2023-11-22 13:50:45 +0400 | [diff] [blame] | 4130 | port: 9501 |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 4131 | conversionReviewVersions: |
| 4132 | - v1beta2 |
| 4133 | - v1beta1 |
| 4134 | group: longhorn.io |
| 4135 | names: |
| 4136 | kind: Volume |
| 4137 | listKind: VolumeList |
| 4138 | plural: volumes |
| 4139 | shortNames: |
| 4140 | - lhv |
| 4141 | singular: volume |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 4142 | preserveUnknownFields: false |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 4143 | scope: Namespaced |
| 4144 | versions: |
| 4145 | - additionalPrinterColumns: |
| 4146 | - description: The state of the volume |
| 4147 | jsonPath: .status.state |
| 4148 | name: State |
| 4149 | type: string |
| 4150 | - description: The robustness of the volume |
| 4151 | jsonPath: .status.robustness |
| 4152 | name: Robustness |
| 4153 | type: string |
| 4154 | - description: The scheduled condition of the volume |
| 4155 | jsonPath: .status.conditions['scheduled']['status'] |
| 4156 | name: Scheduled |
| 4157 | type: string |
| 4158 | - description: The size of the volume |
| 4159 | jsonPath: .spec.size |
| 4160 | name: Size |
| 4161 | type: string |
| 4162 | - description: The node that the volume is currently attaching to |
| 4163 | jsonPath: .status.currentNodeID |
| 4164 | name: Node |
| 4165 | type: string |
| 4166 | - jsonPath: .metadata.creationTimestamp |
| 4167 | name: Age |
| 4168 | type: date |
| 4169 | name: v1beta1 |
| 4170 | schema: |
| 4171 | openAPIV3Schema: |
| 4172 | description: Volume is where Longhorn stores volume object. |
| 4173 | properties: |
| 4174 | apiVersion: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 4175 | description: |- |
| 4176 | APIVersion defines the versioned schema of this representation of an object. |
| 4177 | Servers should convert recognized schemas to the latest internal value, and |
| 4178 | may reject unrecognized values. |
| 4179 | More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 4180 | type: string |
| 4181 | kind: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 4182 | description: |- |
| 4183 | Kind is a string value representing the REST resource this object represents. |
| 4184 | Servers may infer this from the endpoint the client submits requests to. |
| 4185 | Cannot be updated. |
| 4186 | In CamelCase. |
| 4187 | More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 4188 | type: string |
| 4189 | metadata: |
| 4190 | type: object |
| 4191 | spec: |
| 4192 | x-kubernetes-preserve-unknown-fields: true |
| 4193 | status: |
| 4194 | x-kubernetes-preserve-unknown-fields: true |
| 4195 | type: object |
| 4196 | served: true |
| 4197 | storage: false |
| 4198 | subresources: |
| 4199 | status: {} |
| 4200 | - additionalPrinterColumns: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 4201 | - description: The data engine of the volume |
| 4202 | jsonPath: .spec.dataEngine |
| 4203 | name: Data Engine |
| 4204 | type: string |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 4205 | - description: The state of the volume |
| 4206 | jsonPath: .status.state |
| 4207 | name: State |
| 4208 | type: string |
| 4209 | - description: The robustness of the volume |
| 4210 | jsonPath: .status.robustness |
| 4211 | name: Robustness |
| 4212 | type: string |
| 4213 | - description: The scheduled condition of the volume |
| 4214 | jsonPath: .status.conditions[?(@.type=='Schedulable')].status |
| 4215 | name: Scheduled |
| 4216 | type: string |
| 4217 | - description: The size of the volume |
| 4218 | jsonPath: .spec.size |
| 4219 | name: Size |
| 4220 | type: string |
| 4221 | - description: The node that the volume is currently attaching to |
| 4222 | jsonPath: .status.currentNodeID |
| 4223 | name: Node |
| 4224 | type: string |
| 4225 | - jsonPath: .metadata.creationTimestamp |
| 4226 | name: Age |
| 4227 | type: date |
| 4228 | name: v1beta2 |
| 4229 | schema: |
| 4230 | openAPIV3Schema: |
| 4231 | description: Volume is where Longhorn stores volume object. |
| 4232 | properties: |
| 4233 | apiVersion: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 4234 | description: |- |
| 4235 | APIVersion defines the versioned schema of this representation of an object. |
| 4236 | Servers should convert recognized schemas to the latest internal value, and |
| 4237 | may reject unrecognized values. |
| 4238 | More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 4239 | type: string |
| 4240 | kind: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 4241 | description: |- |
| 4242 | Kind is a string value representing the REST resource this object represents. |
| 4243 | Servers may infer this from the endpoint the client submits requests to. |
| 4244 | Cannot be updated. |
| 4245 | In CamelCase. |
| 4246 | More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 4247 | type: string |
| 4248 | metadata: |
| 4249 | type: object |
| 4250 | spec: |
| 4251 | description: VolumeSpec defines the desired state of the Longhorn volume |
| 4252 | properties: |
| 4253 | Standby: |
| 4254 | type: boolean |
| 4255 | accessMode: |
| 4256 | enum: |
| 4257 | - rwo |
| 4258 | - rwx |
| 4259 | type: string |
| Giorgi Lekveishvili | 285ab62 | 2023-11-22 13:50:45 +0400 | [diff] [blame] | 4260 | backendStoreDriver: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 4261 | description: Deprecated:Replaced by field `dataEngine`.' |
| Giorgi Lekveishvili | 285ab62 | 2023-11-22 13:50:45 +0400 | [diff] [blame] | 4262 | type: string |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 4263 | backingImage: |
| 4264 | type: string |
| Giorgi Lekveishvili | 285ab62 | 2023-11-22 13:50:45 +0400 | [diff] [blame] | 4265 | backupCompressionMethod: |
| 4266 | enum: |
| 4267 | - none |
| 4268 | - lz4 |
| 4269 | - gzip |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 4270 | type: string |
| gio | 2539d9e | 2025-05-22 12:19:30 +0400 | [diff] [blame^] | 4271 | backupTargetName: |
| 4272 | description: The backup target name that the volume will be backed |
| 4273 | up to or is synced. |
| 4274 | type: string |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 4275 | dataEngine: |
| 4276 | enum: |
| 4277 | - v1 |
| 4278 | - v2 |
| 4279 | type: string |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 4280 | dataLocality: |
| 4281 | enum: |
| 4282 | - disabled |
| 4283 | - best-effort |
| 4284 | - strict-local |
| 4285 | type: string |
| 4286 | dataSource: |
| 4287 | type: string |
| 4288 | disableFrontend: |
| 4289 | type: boolean |
| 4290 | diskSelector: |
| 4291 | items: |
| 4292 | type: string |
| 4293 | type: array |
| 4294 | encrypted: |
| 4295 | type: boolean |
| 4296 | engineImage: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 4297 | description: 'Deprecated: Replaced by field `image`.' |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 4298 | type: string |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 4299 | freezeFilesystemForSnapshot: |
| 4300 | description: Setting that freezes the filesystem on the root partition |
| 4301 | before a snapshot is created. |
| 4302 | enum: |
| 4303 | - ignored |
| 4304 | - enabled |
| 4305 | - disabled |
| 4306 | type: string |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 4307 | fromBackup: |
| 4308 | type: string |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 4309 | frontend: |
| 4310 | enum: |
| 4311 | - blockdev |
| 4312 | - iscsi |
| Giorgi Lekveishvili | 285ab62 | 2023-11-22 13:50:45 +0400 | [diff] [blame] | 4313 | - nvmf |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 4314 | - "" |
| 4315 | type: string |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 4316 | image: |
| 4317 | type: string |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 4318 | lastAttachedBy: |
| 4319 | type: string |
| 4320 | migratable: |
| 4321 | type: boolean |
| 4322 | migrationNodeID: |
| 4323 | type: string |
| 4324 | nodeID: |
| 4325 | type: string |
| 4326 | nodeSelector: |
| 4327 | items: |
| 4328 | type: string |
| 4329 | type: array |
| 4330 | numberOfReplicas: |
| 4331 | type: integer |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 4332 | replicaAutoBalance: |
| 4333 | enum: |
| 4334 | - ignored |
| 4335 | - disabled |
| 4336 | - least-effort |
| 4337 | - best-effort |
| 4338 | type: string |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 4339 | replicaDiskSoftAntiAffinity: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 4340 | description: Replica disk soft anti affinity of the volume. Set enabled |
| 4341 | to allow replicas to be scheduled in the same disk. |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 4342 | enum: |
| 4343 | - ignored |
| 4344 | - enabled |
| 4345 | - disabled |
| 4346 | type: string |
| Giorgi Lekveishvili | 285ab62 | 2023-11-22 13:50:45 +0400 | [diff] [blame] | 4347 | replicaSoftAntiAffinity: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 4348 | description: Replica soft anti affinity of the volume. Set enabled |
| 4349 | to allow replicas to be scheduled on the same node. |
| Giorgi Lekveishvili | 285ab62 | 2023-11-22 13:50:45 +0400 | [diff] [blame] | 4350 | enum: |
| 4351 | - ignored |
| 4352 | - enabled |
| 4353 | - disabled |
| 4354 | type: string |
| 4355 | replicaZoneSoftAntiAffinity: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 4356 | description: Replica zone soft anti affinity of the volume. Set enabled |
| 4357 | to allow replicas to be scheduled in the same zone. |
| Giorgi Lekveishvili | 285ab62 | 2023-11-22 13:50:45 +0400 | [diff] [blame] | 4358 | enum: |
| 4359 | - ignored |
| 4360 | - enabled |
| 4361 | - disabled |
| 4362 | type: string |
| 4363 | restoreVolumeRecurringJob: |
| 4364 | enum: |
| 4365 | - ignored |
| 4366 | - enabled |
| 4367 | - disabled |
| 4368 | type: string |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 4369 | revisionCounterDisabled: |
| 4370 | type: boolean |
| 4371 | size: |
| 4372 | format: int64 |
| 4373 | type: string |
| 4374 | snapshotDataIntegrity: |
| 4375 | enum: |
| 4376 | - ignored |
| 4377 | - disabled |
| 4378 | - enabled |
| 4379 | - fast-check |
| 4380 | type: string |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 4381 | snapshotMaxCount: |
| 4382 | type: integer |
| 4383 | snapshotMaxSize: |
| 4384 | format: int64 |
| 4385 | type: string |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 4386 | staleReplicaTimeout: |
| 4387 | type: integer |
| 4388 | unmapMarkSnapChainRemoved: |
| 4389 | enum: |
| 4390 | - ignored |
| 4391 | - disabled |
| 4392 | - enabled |
| 4393 | type: string |
| 4394 | type: object |
| 4395 | status: |
| 4396 | description: VolumeStatus defines the observed state of the Longhorn volume |
| 4397 | properties: |
| 4398 | actualSize: |
| 4399 | format: int64 |
| 4400 | type: integer |
| 4401 | cloneStatus: |
| 4402 | properties: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 4403 | attemptCount: |
| 4404 | type: integer |
| 4405 | nextAllowedAttemptAt: |
| 4406 | type: string |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 4407 | snapshot: |
| 4408 | type: string |
| 4409 | sourceVolume: |
| 4410 | type: string |
| 4411 | state: |
| 4412 | type: string |
| 4413 | type: object |
| 4414 | conditions: |
| 4415 | items: |
| 4416 | properties: |
| 4417 | lastProbeTime: |
| 4418 | description: Last time we probed the condition. |
| 4419 | type: string |
| 4420 | lastTransitionTime: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 4421 | description: Last time the condition transitioned from one status |
| 4422 | to another. |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 4423 | type: string |
| 4424 | message: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 4425 | description: Human-readable message indicating details about |
| 4426 | last transition. |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 4427 | type: string |
| 4428 | reason: |
| gio | c9b92b1 | 2025-05-22 08:57:18 +0400 | [diff] [blame] | 4429 | description: Unique, one-word, CamelCase reason for the condition's |
| 4430 | last transition. |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 4431 | type: string |
| 4432 | status: |
| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 4433 | description: |- |
| 4434 | Status is the status of the condition. |
| 4435 | Can be True, False, Unknown. |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 4436 | type: string |
| 4437 | type: |
| 4438 | description: Type is the type of the condition. |
| 4439 | type: string |
| 4440 | type: object |
| 4441 | nullable: true |
| 4442 | type: array |
| 4443 | currentImage: |
| 4444 | type: string |
| Giorgi Lekveishvili | 285ab62 | 2023-11-22 13:50:45 +0400 | [diff] [blame] | 4445 | currentMigrationNodeID: |
| 4446 | description: the node that this volume is currently migrating to |
| 4447 | type: string |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 4448 | currentNodeID: |
| 4449 | type: string |
| 4450 | expansionRequired: |
| 4451 | type: boolean |
| 4452 | frontendDisabled: |
| 4453 | type: boolean |
| 4454 | isStandby: |
| 4455 | type: boolean |
| 4456 | kubernetesStatus: |
| 4457 | properties: |
| 4458 | lastPVCRefAt: |
| 4459 | type: string |
| 4460 | lastPodRefAt: |
| 4461 | type: string |
| 4462 | namespace: |
| 4463 | description: determine if PVC/Namespace is history or not |
| 4464 | type: string |
| 4465 | pvName: |
| 4466 | type: string |
| 4467 | pvStatus: |
| 4468 | type: string |
| 4469 | pvcName: |
| 4470 | type: string |
| 4471 | workloadsStatus: |
| 4472 | description: determine if Pod/Workload is history or not |
| 4473 | items: |
| 4474 | properties: |
| 4475 | podName: |
| 4476 | type: string |
| 4477 | podStatus: |
| 4478 | type: string |
| 4479 | workloadName: |
| 4480 | type: string |
| 4481 | workloadType: |
| 4482 | type: string |
| 4483 | type: object |
| 4484 | nullable: true |
| 4485 | type: array |
| 4486 | type: object |
| 4487 | lastBackup: |
| 4488 | type: string |
| 4489 | lastBackupAt: |
| 4490 | type: string |
| 4491 | lastDegradedAt: |
| 4492 | type: string |
| 4493 | ownerID: |
| 4494 | type: string |
| 4495 | pendingNodeID: |
| Giorgi Lekveishvili | 285ab62 | 2023-11-22 13:50:45 +0400 | [diff] [blame] | 4496 | description: Deprecated. |
| Giorgi Lekveishvili | 725bb39 | 2023-05-05 18:24:27 +0400 | [diff] [blame] | 4497 | type: string |
| 4498 | remountRequestedAt: |
| 4499 | type: string |
| 4500 | restoreInitiated: |
| 4501 | type: boolean |
| 4502 | restoreRequired: |
| 4503 | type: boolean |
| 4504 | robustness: |
| 4505 | type: string |
| 4506 | shareEndpoint: |
| 4507 | type: string |
| 4508 | shareState: |
| 4509 | type: string |
| 4510 | state: |
| 4511 | type: string |
| 4512 | type: object |
| 4513 | type: object |
| 4514 | served: true |
| 4515 | storage: true |
| 4516 | subresources: |
| 4517 | status: {} |