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