github.com/operator-framework/operator-lifecycle-manager@v0.30.0/deploy/upstream/manifests/0.7.0/03-clusterserviceversion.crd.yaml (about) 1 ##--- 2 # Source: olm/templates/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 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 customresourcedefinitions: 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 - name 195 - version 196 - kind 197 - displayName 198 - description 199 properties: 200 name: 201 type: string 202 description: Fully qualified name of the CustomResourceDefinition (e.g. my-resource-v1.app.coreos.com) 203 version: 204 type: string 205 description: The version field of the CustomResourceDefinition 206 kind: 207 type: string 208 description: The kind field of the CustomResourceDefinition 209 displayName: 210 type: string 211 description: A human-readable name for the CRD. 212 description: 213 type: string 214 description: A description of the CRD 215 resources: 216 type: array 217 items: 218 type: object 219 description: A list of resources that should be displayed for the CRD 220 required: 221 - kind 222 - version 223 properties: 224 name: 225 type: string 226 description: If a CRD, the fully qualified name of the CustomResourceDefinition (e.g. my-resource-v1.app.coreos.com) 227 version: 228 type: string 229 description: The version of the resource kind 230 kind: 231 type: string 232 description: The kind field of the resource kind 233 statusDescriptors: 234 type: array 235 items: 236 type: object 237 description: A spec for a field in the status block of the CRD 238 required: 239 - path 240 - displayName 241 - description 242 properties: 243 path: 244 type: string 245 description: A jsonpath indexing into the status object on the CR where the the status value can be found. 246 displayName: 247 type: string 248 description: A human-readable name for the status entry. 249 description: 250 type: string 251 description: A description of the status entry. 252 x-descriptors: 253 type: array 254 description: A list of descriptors for the status entry that indicate the meaning of the field. 255 items: 256 type: string 257 value: 258 type: object 259 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. 260 specDescriptors: 261 type: array 262 items: 263 type: object 264 description: A spec for a field in the spec block of the CRD 265 required: 266 - path 267 - displayName 268 - description 269 properties: 270 path: 271 type: string 272 description: A jsonpath indexing into the spec object on the CR where the the spec value can be found. 273 displayName: 274 type: string 275 description: A human-readable name for the spec entry. 276 description: 277 type: string 278 description: A description of the spec entry. 279 x-descriptors: 280 type: array 281 description: A list of descriptors for the spec entry that indicate the meaning of the field. 282 items: 283 type: string 284 value: 285 type: object 286 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. 287 actionDescriptors: 288 type: array 289 items: 290 type: object 291 description: A spec for actions that can be performed on instances of the CRD 292 required: 293 - path 294 - displayName 295 - description 296 properties: 297 path: 298 type: string 299 description: A jsonpath indexing into the spec object on the CR where the the spec value can be found. 300 displayName: 301 type: string 302 description: A human-readable name for the action. 303 description: 304 type: string 305 description: A description of the action. 306 x-descriptors: 307 type: array 308 description: A list of descriptors for the action that indicate the meaning of the action. 309 items: 310 type: string 311 value: 312 type: object 313 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. 314 required: 315 type: array 316 description: What resources this operator is responsible for managing. No two running operators should manage the same resource. 317 items: 318 type: object 319 required: 320 - name 321 - version 322 - kind 323 - displayName 324 - description 325 properties: 326 name: 327 type: string 328 description: Fully qualified name of the CustomResourceDefinition (e.g. my-resource-v1.app.coreos.com) 329 version: 330 type: string 331 description: The version field of the CustomResourceDefinition 332 kind: 333 type: string 334 description: The kind field of the CustomResourceDefinition 335 displayName: 336 type: string 337 description: A human-readable name for the CRD. 338 description: 339 type: string 340 description: A description of the CRD 341 statusDescriptors: 342 type: array 343 items: 344 type: object 345 description: A spec for a field in the status block of the CRD 346 required: 347 - path 348 - displayName 349 - description 350 properties: 351 path: 352 type: string 353 description: A jsonpath indexing into the status object on the CR where the the status value can be found. 354 displayName: 355 type: string 356 description: A human-readable name for the status entry. 357 description: 358 type: string 359 description: A description of the status entry. 360 x-descriptors: 361 type: array 362 description: A list of descriptors for the status entry that indicate the meaning of the field. 363 items: 364 type: string 365 value: 366 type: object 367 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. 368 369 370 install: 371 type: object 372 description: Information required to install this specific version of the operator software 373 oneOf: 374 - type: object 375 required: 376 - strategy 377 - spec 378 properties: 379 strategy: 380 type: string 381 enum: ['image'] 382 spec: 383 type: object 384 required: 385 - image 386 properties: 387 image: 388 type: string 389 - type: object 390 required: 391 - strategy 392 - spec 393 properties: 394 strategy: 395 type: string 396 enum: ['deployment'] 397 spec: 398 type: object 399 required: 400 - deployments 401 properties: 402 deployments: 403 type: array 404 description: List of deployments to create 405 items: 406 type: object 407 description: A name and deployment to create in the cluster 408 required: 409 - name 410 - spec 411 properties: 412 name: 413 type: string 414 description: the consistent name of the deployment 415 spec: 416 type: object 417 description: The deployment spec to create in the cluster 418 permissions: 419 type: array 420 description: Permissions needed by the deployement to run correctly 421 items: 422 type: object 423 required: 424 - serviceAccountName 425 - rules 426 properties: 427 serviceAccountName: 428 type: string 429 description: The service account name to create for the deployment 430 rules: 431 type: array 432 items: 433 type: object 434 description: a rule required by the service account 435 properties: 436 apiGroups: 437 type: array 438 description: apiGroups the rule applies to 439 items: 440 type: string 441 resources: 442 type: array 443 items: 444 type: string 445 resourceNames: 446 type: array 447 items: 448 type: string 449 verbs: 450 type: array 451 items: 452 type: string 453 enum: 454 - "*" 455 - get 456 - list 457 - watch 458 - create 459 - update 460 - patch 461 - delete 462 - deletecollection 463 status: 464 type: object 465 description: Status for a ClusterServiceVersion