github.com/operator-framework/operator-lifecycle-manager@v0.30.0/deploy/upstream/manifests/0.8.0/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      - 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              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              nativeAPIs:
   186                type: array
   187                description: What resources are required by the Operator, but must be provided by the underlying cluster and not as an extension.
   188                items:
   189                  type: object
   190                  required:
   191                  - group
   192                  - version
   193                  - kind
   194                  properties:
   195                    group:
   196                      type: string
   197                      description: Group of the API resource
   198                    version:
   199                      type: string
   200                      description: Version of the API resource
   201                    kind:
   202                      type: string
   203                      description: Kind of the API resource        
   204              apiservicedefinitions:
   205                type: object
   206                properties:
   207                  owned:
   208                    type: array
   209                    description: What resources this operator is responsible for managing. No two running operators should manage the same resource.
   210                    items:
   211                      type: object
   212                      required:
   213                      - group
   214                      - version
   215                      - kind
   216                      - name
   217                      - deploymentName
   218                      - displayName
   219                      - description
   220                      properties:
   221                        group:
   222                          type: string
   223                          description: Group of the APIService (e.g. app.coreos.com)
   224                        name:
   225                          type: string
   226                          description: The plural name for the APIService provided
   227                        version:
   228                          type: string
   229                          description: The version field of the APIService
   230                        kind:
   231                          type: string
   232                          description: The kind field of the APIService
   233                        deploymentName:
   234                          type: string
   235                          description: Name of the extension api-server's deployment
   236                        containerPort:
   237                          type: number
   238                          description: Port where the extension api-server serves TLS traffic
   239                        displayName:
   240                          type: string
   241                          description: A human-readable name for the APIService.
   242                        description:
   243                          type: string
   244                          description: A description of the APIService
   245                        resources:
   246                          type: array
   247                          items:
   248                            type: object
   249                            description: A list of resources that should be displayed for the APIService
   250                            required:
   251                            - kind
   252                            - version
   253                            properties:
   254                              name:
   255                                type: string
   256                                description: If a APIService, the fully qualified name of the APIService (e.g. my-resource-v1.app.coreos.com)
   257                              version:
   258                                type: string
   259                                description: The version of the resource kind
   260                              kind:
   261                                type: string
   262                                description: The kind field of the resource kind
   263                        statusDescriptors:
   264                          type: array
   265                          items:
   266                            type: object
   267                            description: A spec for a field in the status block of the API resource
   268                            required:
   269                            - path
   270                            - displayName
   271                            - description
   272                            properties:
   273                              path:
   274                                type: string
   275                                description: A jsonpath indexing into the status object on the API resource where the the status value can be found.
   276                              displayName:
   277                                type: string
   278                                description: A human-readable name for the status entry.
   279                              description:
   280                                type: string
   281                                description: A description of the status entry.
   282                              x-descriptors:
   283                                type: array
   284                                description: A list of descriptors for the status entry that indicate the meaning of the field.
   285                                items:
   286                                  type: string
   287                              value:
   288                                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.
   289                        specDescriptors:
   290                          type: array
   291                          items:
   292                            type: object
   293                            description: A spec for a field in the spec block of the APIService resource.
   294                            required:
   295                            - path
   296                            - displayName
   297                            - description
   298                            properties:
   299                              path:
   300                                type: string
   301                                description: A jsonpath indexing into the spec object on the API resource where the the spec value can be found.
   302                              displayName:
   303                                type: string
   304                                description: A human-readable name for the spec entry.
   305                              description:
   306                                type: string
   307                                description: A description of the spec entry.
   308                              x-descriptors:
   309                                type: array
   310                                description: A list of descriptors for the spec entry that indicate the meaning of the field.
   311                                items:
   312                                  type: string
   313                              value:
   314                                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.
   315                        actionDescriptors:
   316                          type: array
   317                          items:
   318                            type: object
   319                            description: A spec for actions that can be performed on instances of the API resource
   320                            required:
   321                            - path
   322                            - displayName
   323                            - description
   324                            properties:
   325                              path:
   326                                type: string
   327                                description: A jsonpath indexing into the spec object on the API resource where the the spec value can be found.
   328                              displayName:
   329                                type: string
   330                                description: A human-readable name for the action.
   331                              description:
   332                                type: string
   333                                description: A description of the action.
   334                              x-descriptors:
   335                                type: array
   336                                description: A list of descriptors for the action that indicate the meaning of the action.
   337                                items:
   338                                  type: string
   339                              value:
   340                                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.
   341                  required:
   342                    type: array
   343                    description: What resources this operator is responsible for managing. No two running operators should manage the same resource.
   344                    items:
   345                      type: object
   346                      required:
   347                      - group
   348                      - version
   349                      - kind
   350                      - name
   351                      - displayName
   352                      - description
   353                      properties:
   354                        group:
   355                          type: string
   356                          description: Group of the APIService (e.g. app.coreos.com)
   357                        version:
   358                          type: string
   359                          description: The version field of the APIService
   360                        kind:
   361                          type: string
   362                          description: The kind field of the APIService
   363                        name:
   364                          type: string
   365                          description: The plural name for the APIService provided
   366                        deploymentName:
   367                          type: string
   368                          description: Name of the extension api-server's deployment
   369                        containerPort:
   370                          type: number
   371                          description: Port where the extension api-server serves TLS traffic
   372                        displayName:
   373                          type: string
   374                          description: A human-readable name for the APIService.
   375                        description:
   376                          type: string
   377                          description: A description of the APIService
   378                        statusDescriptors:
   379                          type: array
   380                          items:
   381                            type: object
   382                            description: A spec for a field in the status block of the APIService
   383                            required:
   384                            - path
   385                            - displayName
   386                            - description
   387                            properties:
   388                              path:
   389                                type: string
   390                                description: A jsonpath indexing into the status object on the API Resource where the the status value can be found.
   391                              displayName:
   392                                type: string
   393                                description: A human-readable name for the status entry.
   394                              description:
   395                                type: string
   396                                description: A description of the status entry.
   397                              x-descriptors:
   398                                type: array
   399                                description: A list of descriptors for the status entry that indicate the meaning of the field.
   400                                items:
   401                                  type: string
   402                              value:
   403                                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.
   404  
   405              customresourcedefinitions:
   406                type: object
   407                properties:
   408                  owned:
   409                    type: array
   410                    description: What resources this operator is responsible for managing. No two running operators should manage the same resource.
   411                    items:
   412                      type: object
   413                      required:
   414                        - name
   415                        - version
   416                        - kind
   417                        - displayName
   418                        - description
   419                      properties:
   420                        name:
   421                          type: string
   422                          description: Fully qualified name of the CustomResourceDefinition (e.g. my-resource-v1.app.coreos.com)
   423                        version:
   424                          type: string
   425                          description: The version field of the CustomResourceDefinition
   426                        kind:
   427                          type: string
   428                          description: The kind field of the CustomResourceDefinition
   429                        displayName:
   430                          type: string
   431                          description: A human-readable name for the CRD.
   432                        description:
   433                          type: string
   434                          description: A description of the CRD
   435                        resources:
   436                          type: array
   437                          items:
   438                            type: object
   439                            description: A list of resources that should be displayed for the CRD
   440                            required:
   441                              - kind
   442                              - version
   443                            properties:
   444                              name:
   445                                type: string
   446                                description: If a CRD, the fully qualified name of the CustomResourceDefinition (e.g. my-resource-v1.app.coreos.com)
   447                              version:
   448                                type: string
   449                                description: The version of the resource kind
   450                              kind:
   451                                type: string
   452                                description: The kind field of the resource kind
   453                        statusDescriptors:
   454                          type: array
   455                          items:
   456                            type: object
   457                            description: A spec for a field in the status block of the CRD
   458                            required:
   459                              - path
   460                              - displayName
   461                              - description
   462                            properties:
   463                              path:
   464                                type: string
   465                                description: A jsonpath indexing into the status object on the CR where the the status value can be found.
   466                              displayName:
   467                                type: string
   468                                description: A human-readable name for the status entry.
   469                              description:
   470                                type: string
   471                                description: A description of the status entry.
   472                              x-descriptors:
   473                                type: array
   474                                description: A list of descriptors for the status entry that indicate the meaning of the field.
   475                                items:
   476                                  type: string
   477                              value:
   478                                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.
   479                        specDescriptors:
   480                          type: array
   481                          items:
   482                            type: object
   483                            description: A spec for a field in the spec block of the CRD
   484                            required:
   485                              - path
   486                              - displayName
   487                              - description
   488                            properties:
   489                              path:
   490                                type: string
   491                                description: A jsonpath indexing into the spec object on the CR where the the spec value can be found.
   492                              displayName:
   493                                type: string
   494                                description: A human-readable name for the spec entry.
   495                              description:
   496                                type: string
   497                                description: A description of the spec entry.
   498                              x-descriptors:
   499                                type: array
   500                                description: A list of descriptors for the spec entry that indicate the meaning of the field.
   501                                items:
   502                                  type: string
   503                              value:
   504                                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.
   505                        actionDescriptors:
   506                          type: array
   507                          items:
   508                            type: object
   509                            description: A spec for actions that can be performed on instances of the CRD
   510                            required:
   511                              - path
   512                              - displayName
   513                              - description
   514                            properties:
   515                              path:
   516                                type: string
   517                                description: A jsonpath indexing into the spec object on the CR where the the spec value can be found.
   518                              displayName:
   519                                type: string
   520                                description: A human-readable name for the action.
   521                              description:
   522                                type: string
   523                                description: A description of the action.
   524                              x-descriptors:
   525                                type: array
   526                                description: A list of descriptors for the action that indicate the meaning of the action.
   527                                items:
   528                                  type: string
   529                              value:
   530                                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.
   531                  required:
   532                    type: array
   533                    description: What resources this operator is responsible for managing. No two running operators should manage the same resource.
   534                    items:
   535                      type: object
   536                      required:
   537                        - name
   538                        - version
   539                        - kind
   540                        - displayName
   541                        - description
   542                      properties:
   543                        name:
   544                          type: string
   545                          description: Fully qualified name of the CustomResourceDefinition (e.g. my-resource-v1.app.coreos.com)
   546                        version:
   547                          type: string
   548                          description: The version field of the CustomResourceDefinition
   549                        kind:
   550                          type: string
   551                          description: The kind field of the CustomResourceDefinition
   552                        displayName:
   553                          type: string
   554                          description: A human-readable name for the CRD.
   555                        description:
   556                          type: string
   557                          description: A description of the CRD
   558                        statusDescriptors:
   559                          type: array
   560                          items:
   561                            type: object
   562                            description: A spec for a field in the status block of the CRD
   563                            required:
   564                              - path
   565                              - displayName
   566                              - description
   567                            properties:
   568                              path:
   569                                type: string
   570                                description: A jsonpath indexing into the status object on the CR where the the status value can be found.
   571                              displayName:
   572                                type: string
   573                                description: A human-readable name for the status entry.
   574                              description:
   575                                type: string
   576                                description: A description of the status entry.
   577                              x-descriptors:
   578                                type: array
   579                                description: A list of descriptors for the status entry that indicate the meaning of the field.
   580                                items:
   581                                  type: string
   582                              value:
   583                                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.
   584  
   585  
   586              install:
   587                type: object
   588                description: Information required to install this specific version of the operator software
   589                oneOf:
   590                - type: object
   591                  required:
   592                  - strategy
   593                  - spec
   594                  properties:
   595                    strategy:
   596                      type: string
   597                      enum: ['image']
   598                    spec:
   599                      type: object
   600                      required:
   601                      - image
   602                      properties:
   603                        image:
   604                          type: string
   605                - type: object
   606                  required:
   607                  - strategy
   608                  - spec
   609                  properties:
   610                    strategy:
   611                      type: string
   612                      enum: ['deployment']
   613                    spec:
   614                      type: object
   615                      required:
   616                      - deployments
   617                      properties:
   618                        installModes:
   619                          type: array
   620                          description: List of supported install modes for the operator
   621                          items:
   622                            type: object
   623                            description: A tuple representing a mode of installation and whether the operator supports it
   624                            required:
   625                              - type
   626                              - supported
   627                            properties:
   628                              type:
   629                                type: string
   630                                description: A type of install mode
   631                                enum:
   632                                  - OwnNamespace
   633                                  - SingleNamespace
   634                                  - MultiNamespace
   635                                  - AllNamespaces
   636                              supported:
   637                                type: boolean
   638                                description: Represents if the install mode type is supported
   639                        deployments:
   640                          type: array
   641                          description: List of deployments to create
   642                          items:
   643                            type: object
   644                            description: A name and deployment to create in the cluster
   645                            required:
   646                              - name
   647                              - spec
   648                            properties:
   649                              name:
   650                                type: string
   651                                description: the consistent name of the deployment
   652                              spec:
   653                                type: object
   654                                description: The deployment spec to create in the cluster
   655                        permissions:
   656                          type: array
   657                          description: Permissions needed by the deployement to run correctly
   658                          items:
   659                            type: object
   660                            required:
   661                              - serviceAccountName
   662                              - rules
   663                            properties:
   664                              serviceAccountName:
   665                                type: string
   666                                description: The service account name to create for the deployment
   667                              rules:
   668                                type: array
   669                                items:
   670                                  type: object
   671                                  description: a rule required by the service account
   672                                  properties:
   673                                    apiGroups:
   674                                      type: array
   675                                      description: apiGroups the rule applies to
   676                                      items:
   677                                        type: string
   678                                    resources:
   679                                      type: array
   680                                      items:
   681                                        type: string
   682                                    resourceNames:
   683                                      type: array
   684                                      items:
   685                                        type: string
   686                                    verbs:
   687                                      type: array
   688                                      items:
   689                                        type: string
   690                                        enum:
   691                                          - "*"
   692                                          - assign
   693                                          - get
   694                                          - list
   695                                          - watch
   696                                          - create
   697                                          - update
   698                                          - patch
   699                                          - delete
   700                                          - deletecollection
   701                                          - initialize
   702                        clusterPermissions:
   703                          type: array
   704                          description: Cluster permissions needed by the deployement to run correctly
   705                          items:
   706                            type: object
   707                            required:
   708                            - serviceAccountName
   709                            - rules
   710                            properties:
   711                              serviceAccountName:
   712                                type: string
   713                                description: The service account name to create for the deployment
   714                              rules:
   715                                type: array
   716                                items:
   717                                  type: object
   718                                  required:
   719                                  - verbs
   720                                  description: a rule required by the service account
   721                                  properties:
   722                                    apiGroups:
   723                                      type: array
   724                                      description: apiGroups the rule applies to
   725                                      items:
   726                                        type: string
   727                                    resources:
   728                                      type: array
   729                                      items:
   730                                        type: string
   731                                    resourceNames:
   732                                      type: array
   733                                      items:
   734                                        type: string
   735                                    nonResourceURLs:
   736                                      type: array
   737                                      items:
   738                                        type: string
   739                                    verbs:
   740                                      type: array
   741                                      items:
   742                                        type: string
   743                                        enum:
   744                                        - "*"
   745                                        - assign
   746                                        - get
   747                                        - list
   748                                        - watch
   749                                        - create
   750                                        - update
   751                                        - patch
   752                                        - put
   753                                        - post
   754                                        - delete
   755                                        - deletecollection
   756                                        - initialize
   757                                        - use
   758          status:
   759            type: object
   760            description: Status for a ClusterServiceVersion