github.com/operator-framework/operator-lifecycle-manager@v0.30.0/deploy/upstream/manifests/0.7.4/0000_30_02-clusterserviceversion.crd.yaml (about) 1 ##--- 2 # Source: olm/templates/0000_30_02-clusterserviceversion.crd.yaml 3 apiVersion: apiextensions.k8s.io/v1beta1 4 kind: CustomResourceDefinition 5 metadata: 6 name: clusterserviceversions.operators.coreos.com 7 annotations: 8 displayName: Operator Version 9 description: Represents an Operator that should be running on the cluster, including requirements and install strategy. 10 spec: 11 names: 12 plural: clusterserviceversions 13 singular: clusterserviceversion 14 kind: ClusterServiceVersion 15 listKind: ClusterServiceVersionList 16 shortNames: 17 - csv 18 categories: 19 - all 20 - olm 21 additionalPrinterColumns: 22 - name: Display 23 type: string 24 description: The name of the CSV 25 JSONPath: .spec.displayName 26 - name: Version 27 type: string 28 description: The version of the CSV 29 JSONPath: .spec.version 30 - name: Replaces 31 type: string 32 description: The name of a CSV that this one replaces 33 JSONPath: .spec.replaces 34 - name: Phase 35 type: string 36 JSONPath: .status.phase 37 group: operators.coreos.com 38 version: v1alpha1 39 versions: 40 - name: v1alpha1 41 served: true 42 storage: true 43 scope: Namespaced 44 subresources: 45 # status enables the status subresource. 46 status: {} 47 validation: 48 openAPIV3Schema: 49 properties: 50 spec: 51 type: object 52 description: Spec for a ClusterServiceVersion 53 required: 54 - displayName 55 - install 56 properties: 57 displayName: 58 type: string 59 description: Human readable name of the application that will be displayed in the ALM UI 60 61 description: 62 type: string 63 description: Human readable description of what the application does 64 65 keywords: 66 type: array 67 description: List of keywords which will be used to discover and categorize app types 68 items: 69 type: string 70 71 maintainers: 72 type: array 73 description: Those responsible for the creation of this specific app type 74 items: 75 type: object 76 description: Information for a single maintainer 77 required: 78 - name 79 - email 80 properties: 81 name: 82 type: string 83 description: Maintainer's name 84 email: 85 type: string 86 description: Maintainer's email address 87 format: email 88 optionalProperties: 89 type: string 90 description: "Any additional key-value metadata you wish to expose about the maintainer, e.g. github: <username>" 91 92 links: 93 type: array 94 description: Interesting links to find more information about the project, such as marketing page, documentation, or github page 95 items: 96 type: object 97 description: A single link to describe one aspect of the project 98 required: 99 - name 100 - url 101 properties: 102 name: 103 type: string 104 description: Name of the link type, e.g. homepage or github url 105 url: 106 type: string 107 description: URL to which the link should point 108 format: uri 109 110 icon: 111 type: array 112 description: Icon which should be rendered with the application information 113 required: 114 - base64data 115 - mediatype 116 properties: 117 base64data: 118 type: string 119 description: Base64 binary representation of the icon image 120 pattern: ^(?:[A-Za-z0-9+/]{4}){0,16250}(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$ 121 mediatype: 122 type: string 123 description: Mediatype for the binary data specified in the base64data property 124 enum: 125 - image/gif 126 - image/jpeg 127 - image/png 128 - image/svg+xml 129 version: 130 type: string 131 description: Version string, recommended that users use semantic versioning 132 pattern: ^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(-(0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(\.(0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*)?(\+[0-9a-zA-Z-]+(\.[0-9a-zA-Z-]+)*)?$ 133 134 replaces: 135 type: string 136 description: Name of the ClusterServiceVersion custom resource that this version replaces 137 138 maturity: 139 type: string 140 description: What level of maturity the software has achieved at this version 141 enum: 142 - planning 143 - pre-alpha 144 - alpha 145 - beta 146 - stable 147 - mature 148 - inactive 149 - deprecated 150 labels: 151 type: object 152 description: Labels that will be applied to associated resources created by the operator. 153 selector: 154 type: object 155 description: Label selector to find resources associated with or managed by the operator 156 properties: 157 matchLabels: 158 type: object 159 description: Label key:value pairs to match directly 160 matchExpressions: 161 type: array 162 description: A set of expressions to match against the resource. 163 items: 164 allOf: 165 - type: object 166 required: 167 - key 168 - operator 169 - values 170 properties: 171 key: 172 type: string 173 description: the key to match 174 operator: 175 type: string 176 description: the operator for the expression 177 enum: 178 - In 179 - NotIn 180 - Exists 181 - DoesNotExist 182 values: 183 type: array 184 description: set of values for the expression 185 apiservicedefinitions: 186 type: object 187 properties: 188 owned: 189 type: array 190 description: What resources this operator is responsible for managing. No two running operators should manage the same resource. 191 items: 192 type: object 193 required: 194 - group 195 - version 196 - kind 197 - deploymentName 198 - displayName 199 - description 200 properties: 201 group: 202 type: string 203 description: Group of the APIService (e.g. app.coreos.com) 204 version: 205 type: string 206 description: The version field of the APIService 207 kind: 208 type: string 209 description: The kind field of the APIService 210 deploymentName: 211 type: string 212 description: Name of the extension api-server's deployment 213 containerPort: 214 type: number 215 description: Port where the extension api-server serves TLS traffic 216 displayName: 217 type: string 218 description: A human-readable name for the APIService. 219 description: 220 type: string 221 description: A description of the APIService 222 resources: 223 type: array 224 items: 225 type: object 226 description: A list of resources that should be displayed for the APIService 227 required: 228 - kind 229 - version 230 properties: 231 name: 232 type: string 233 description: If a APIService, the fully qualified name of the APIService (e.g. my-resource-v1.app.coreos.com) 234 version: 235 type: string 236 description: The version of the resource kind 237 kind: 238 type: string 239 description: The kind field of the resource kind 240 statusDescriptors: 241 type: array 242 items: 243 type: object 244 description: A spec for a field in the status block of the API resource 245 required: 246 - path 247 - displayName 248 - description 249 properties: 250 path: 251 type: string 252 description: A jsonpath indexing into the status object on the API resource where the the status value can be found. 253 displayName: 254 type: string 255 description: A human-readable name for the status entry. 256 description: 257 type: string 258 description: A description of the status entry. 259 x-descriptors: 260 type: array 261 description: A list of descriptors for the status entry that indicate the meaning of the field. 262 items: 263 type: string 264 value: 265 # FIXME(alecmerdler): Doesn't allow boolean values 266 type: object 267 description: If present, the value of this status is the same for all instances of the API resource and can be found here instead of on the API resource. 268 specDescriptors: 269 type: array 270 items: 271 type: object 272 description: A spec for a field in the spec block of the APIService resource. 273 required: 274 - path 275 - displayName 276 - description 277 properties: 278 path: 279 type: string 280 description: A jsonpath indexing into the spec object on the API resource where the the spec value can be found. 281 displayName: 282 type: string 283 description: A human-readable name for the spec entry. 284 description: 285 type: string 286 description: A description of the spec entry. 287 x-descriptors: 288 type: array 289 description: A list of descriptors for the spec entry that indicate the meaning of the field. 290 items: 291 type: string 292 value: 293 type: object 294 description: If present, the value of this spec is the same for all instances of the API Resource and can be found here instead of on the API resource. 295 actionDescriptors: 296 type: array 297 items: 298 type: object 299 description: A spec for actions that can be performed on instances of the API resource 300 required: 301 - path 302 - displayName 303 - description 304 properties: 305 path: 306 type: string 307 description: A jsonpath indexing into the spec object on the API resource where the the spec value can be found. 308 displayName: 309 type: string 310 description: A human-readable name for the action. 311 description: 312 type: string 313 description: A description of the action. 314 x-descriptors: 315 type: array 316 description: A list of descriptors for the action that indicate the meaning of the action. 317 items: 318 type: string 319 value: 320 type: object 321 description: If present, the value of this action is the same for all instances of the API resource and can be found here instead of on the API resource. 322 required: 323 type: array 324 description: What resources this operator is responsible for managing. No two running operators should manage the same resource. 325 items: 326 type: object 327 required: 328 - group 329 - version 330 - kind 331 - displayName 332 - description 333 properties: 334 group: 335 type: string 336 description: Group of the APIService (e.g. app.coreos.com) 337 version: 338 type: string 339 description: The version field of the APIService 340 kind: 341 type: string 342 description: The kind field of the APIService 343 deploymentName: 344 type: string 345 description: Name of the extension api-server's deployment 346 containerPort: 347 type: number 348 description: Port where the extension api-server serves TLS traffic 349 displayName: 350 type: string 351 description: A human-readable name for the APIService. 352 description: 353 type: string 354 description: A description of the APIService 355 statusDescriptors: 356 type: array 357 items: 358 type: object 359 description: A spec for a field in the status block of the APIService 360 required: 361 - path 362 - displayName 363 - description 364 properties: 365 path: 366 type: string 367 description: A jsonpath indexing into the status object on the API Resource where the the status value can be found. 368 displayName: 369 type: string 370 description: A human-readable name for the status entry. 371 description: 372 type: string 373 description: A description of the status entry. 374 x-descriptors: 375 type: array 376 description: A list of descriptors for the status entry that indicate the meaning of the field. 377 items: 378 type: string 379 value: 380 type: object 381 description: If present, the value of this status is the same for all instances of the API Resource and can be found here instead of on the API Resource. 382 383 customresourcedefinitions: 384 type: object 385 properties: 386 owned: 387 type: array 388 description: What resources this operator is responsible for managing. No two running operators should manage the same resource. 389 items: 390 type: object 391 required: 392 - name 393 - version 394 - kind 395 - displayName 396 - description 397 properties: 398 name: 399 type: string 400 description: Fully qualified name of the CustomResourceDefinition (e.g. my-resource-v1.app.coreos.com) 401 version: 402 type: string 403 description: The version field of the CustomResourceDefinition 404 kind: 405 type: string 406 description: The kind field of the CustomResourceDefinition 407 displayName: 408 type: string 409 description: A human-readable name for the CRD. 410 description: 411 type: string 412 description: A description of the CRD 413 resources: 414 type: array 415 items: 416 type: object 417 description: A list of resources that should be displayed for the CRD 418 required: 419 - kind 420 - version 421 properties: 422 name: 423 type: string 424 description: If a CRD, the fully qualified name of the CustomResourceDefinition (e.g. my-resource-v1.app.coreos.com) 425 version: 426 type: string 427 description: The version of the resource kind 428 kind: 429 type: string 430 description: The kind field of the resource kind 431 statusDescriptors: 432 type: array 433 items: 434 type: object 435 description: A spec for a field in the status block of the CRD 436 required: 437 - path 438 - displayName 439 - description 440 properties: 441 path: 442 type: string 443 description: A jsonpath indexing into the status object on the CR where the the status value can be found. 444 displayName: 445 type: string 446 description: A human-readable name for the status entry. 447 description: 448 type: string 449 description: A description of the status entry. 450 x-descriptors: 451 type: array 452 description: A list of descriptors for the status entry that indicate the meaning of the field. 453 items: 454 type: string 455 value: 456 type: object 457 description: If present, the value of this status is the same for all instances of the CRD and can be found here instead of on the CR. 458 specDescriptors: 459 type: array 460 items: 461 type: object 462 description: A spec for a field in the spec block of the CRD 463 required: 464 - path 465 - displayName 466 - description 467 properties: 468 path: 469 type: string 470 description: A jsonpath indexing into the spec object on the CR where the the spec value can be found. 471 displayName: 472 type: string 473 description: A human-readable name for the spec entry. 474 description: 475 type: string 476 description: A description of the spec entry. 477 x-descriptors: 478 type: array 479 description: A list of descriptors for the spec entry that indicate the meaning of the field. 480 items: 481 type: string 482 value: 483 type: object 484 description: If present, the value of this spec is the same for all instances of the CRD and can be found here instead of on the CR. 485 actionDescriptors: 486 type: array 487 items: 488 type: object 489 description: A spec for actions that can be performed on instances of the CRD 490 required: 491 - path 492 - displayName 493 - description 494 properties: 495 path: 496 type: string 497 description: A jsonpath indexing into the spec object on the CR where the the spec value can be found. 498 displayName: 499 type: string 500 description: A human-readable name for the action. 501 description: 502 type: string 503 description: A description of the action. 504 x-descriptors: 505 type: array 506 description: A list of descriptors for the action that indicate the meaning of the action. 507 items: 508 type: string 509 value: 510 type: object 511 description: If present, the value of this action is the same for all instances of the CRD and can be found here instead of on the CR. 512 required: 513 type: array 514 description: What resources this operator is responsible for managing. No two running operators should manage the same resource. 515 items: 516 type: object 517 required: 518 - name 519 - version 520 - kind 521 - displayName 522 - description 523 properties: 524 name: 525 type: string 526 description: Fully qualified name of the CustomResourceDefinition (e.g. my-resource-v1.app.coreos.com) 527 version: 528 type: string 529 description: The version field of the CustomResourceDefinition 530 kind: 531 type: string 532 description: The kind field of the CustomResourceDefinition 533 displayName: 534 type: string 535 description: A human-readable name for the CRD. 536 description: 537 type: string 538 description: A description of the CRD 539 statusDescriptors: 540 type: array 541 items: 542 type: object 543 description: A spec for a field in the status block of the CRD 544 required: 545 - path 546 - displayName 547 - description 548 properties: 549 path: 550 type: string 551 description: A jsonpath indexing into the status object on the CR where the the status value can be found. 552 displayName: 553 type: string 554 description: A human-readable name for the status entry. 555 description: 556 type: string 557 description: A description of the status entry. 558 x-descriptors: 559 type: array 560 description: A list of descriptors for the status entry that indicate the meaning of the field. 561 items: 562 type: string 563 value: 564 type: object 565 description: If present, the value of this status is the same for all instances of the CRD and can be found here instead of on the CR. 566 567 568 install: 569 type: object 570 description: Information required to install this specific version of the operator software 571 oneOf: 572 - type: object 573 required: 574 - strategy 575 - spec 576 properties: 577 strategy: 578 type: string 579 enum: ['image'] 580 spec: 581 type: object 582 required: 583 - image 584 properties: 585 image: 586 type: string 587 - type: object 588 required: 589 - strategy 590 - spec 591 properties: 592 strategy: 593 type: string 594 enum: ['deployment'] 595 spec: 596 type: object 597 required: 598 - deployments 599 properties: 600 deployments: 601 type: array 602 description: List of deployments to create 603 items: 604 type: object 605 description: A name and deployment to create in the cluster 606 required: 607 - name 608 - spec 609 properties: 610 name: 611 type: string 612 description: the consistent name of the deployment 613 spec: 614 type: object 615 description: The deployment spec to create in the cluster 616 permissions: 617 type: array 618 description: Permissions needed by the deployement to run correctly 619 items: 620 type: object 621 required: 622 - serviceAccountName 623 - rules 624 properties: 625 serviceAccountName: 626 type: string 627 description: The service account name to create for the deployment 628 rules: 629 type: array 630 items: 631 type: object 632 description: a rule required by the service account 633 properties: 634 apiGroups: 635 type: array 636 description: apiGroups the rule applies to 637 items: 638 type: string 639 resources: 640 type: array 641 items: 642 type: string 643 resourceNames: 644 type: array 645 items: 646 type: string 647 verbs: 648 type: array 649 items: 650 type: string 651 enum: 652 - "*" 653 - get 654 - list 655 - watch 656 - create 657 - update 658 - patch 659 - delete 660 - deletecollection 661 - initialize 662 clusterPermissions: 663 type: array 664 description: Cluster permissions needed by the deployement to run correctly 665 items: 666 type: object 667 required: 668 - serviceAccountName 669 - rules 670 properties: 671 serviceAccountName: 672 type: string 673 description: The service account name to create for the deployment 674 rules: 675 type: array 676 items: 677 type: object 678 required: 679 - verbs 680 description: a rule required by the service account 681 properties: 682 apiGroups: 683 type: array 684 description: apiGroups the rule applies to 685 items: 686 type: string 687 resources: 688 type: array 689 items: 690 type: string 691 resourceNames: 692 type: array 693 items: 694 type: string 695 nonResourceURLs: 696 type: array 697 items: 698 type: string 699 verbs: 700 type: array 701 items: 702 type: string 703 enum: 704 - "*" 705 - get 706 - list 707 - watch 708 - create 709 - update 710 - patch 711 - put 712 - post 713 - delete 714 - deletecollection 715 - initialize 716 status: 717 type: object 718 description: Status for a ClusterServiceVersion