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