github.com/operator-framework/operator-lifecycle-manager@v0.30.0/deploy/upstream/manifests/0.7.2/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                                type: object
   266                                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.
   267                        specDescriptors:
   268                          type: array
   269                          items:
   270                            type: object
   271                            description: A spec for a field in the spec block of the APIService resource.
   272                            required:
   273                            - path
   274                            - displayName
   275                            - description
   276                            properties:
   277                              path:
   278                                type: string
   279                                description: A jsonpath indexing into the spec object on the API resource where the the spec value can be found.
   280                              displayName:
   281                                type: string
   282                                description: A human-readable name for the spec entry.
   283                              description:
   284                                type: string
   285                                description: A description of the spec entry.
   286                              x-descriptors:
   287                                type: array
   288                                description: A list of descriptors for the spec entry that indicate the meaning of the field.
   289                                items:
   290                                  type: string
   291                              value:
   292                                type: object
   293                                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.
   294                        actionDescriptors:
   295                          type: array
   296                          items:
   297                            type: object
   298                            description: A spec for actions that can be performed on instances of the API resource
   299                            required:
   300                            - path
   301                            - displayName
   302                            - description
   303                            properties:
   304                              path:
   305                                type: string
   306                                description: A jsonpath indexing into the spec object on the API resource where the the spec value can be found.
   307                              displayName:
   308                                type: string
   309                                description: A human-readable name for the action.
   310                              description:
   311                                type: string
   312                                description: A description of the action.
   313                              x-descriptors:
   314                                type: array
   315                                description: A list of descriptors for the action that indicate the meaning of the action.
   316                                items:
   317                                  type: string
   318                              value:
   319                                type: object
   320                                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.
   321                  required:
   322                    type: array
   323                    description: What resources this operator is responsible for managing. No two running operators should manage the same resource.
   324                    items:
   325                      type: object
   326                      required:
   327                      - group
   328                      - version
   329                      - kind
   330                      - displayName
   331                      - description
   332                      properties:
   333                        group:
   334                          type: string
   335                          description: Group of the APIService (e.g. app.coreos.com)
   336                        version:
   337                          type: string
   338                          description: The version field of the APIService
   339                        kind:
   340                          type: string
   341                          description: The kind field of the APIService
   342                        deploymentName:
   343                          type: string
   344                          description: Name of the extension api-server's deployment
   345                        containerPort:
   346                          type: number
   347                          description: Port where the extension api-server serves TLS traffic
   348                        displayName:
   349                          type: string
   350                          description: A human-readable name for the APIService.
   351                        description:
   352                          type: string
   353                          description: A description of the APIService
   354                        statusDescriptors:
   355                          type: array
   356                          items:
   357                            type: object
   358                            description: A spec for a field in the status block of the APIService
   359                            required:
   360                            - path
   361                            - displayName
   362                            - description
   363                            properties:
   364                              path:
   365                                type: string
   366                                description: A jsonpath indexing into the status object on the API Resource where the the status value can be found.
   367                              displayName:
   368                                type: string
   369                                description: A human-readable name for the status entry.
   370                              description:
   371                                type: string
   372                                description: A description of the status entry.
   373                              x-descriptors:
   374                                type: array
   375                                description: A list of descriptors for the status entry that indicate the meaning of the field.
   376                                items:
   377                                  type: string
   378                              value:
   379                                type: object
   380                                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.
   381  
   382              customresourcedefinitions:
   383                type: object
   384                properties:
   385                  owned:
   386                    type: array
   387                    description: What resources this operator is responsible for managing. No two running operators should manage the same resource.
   388                    items:
   389                      type: object
   390                      required:
   391                        - name
   392                        - version
   393                        - kind
   394                        - displayName
   395                        - description
   396                      properties:
   397                        name:
   398                          type: string
   399                          description: Fully qualified name of the CustomResourceDefinition (e.g. my-resource-v1.app.coreos.com)
   400                        version:
   401                          type: string
   402                          description: The version field of the CustomResourceDefinition
   403                        kind:
   404                          type: string
   405                          description: The kind field of the CustomResourceDefinition
   406                        displayName:
   407                          type: string
   408                          description: A human-readable name for the CRD.
   409                        description:
   410                          type: string
   411                          description: A description of the CRD
   412                        resources:
   413                          type: array
   414                          items:
   415                            type: object
   416                            description: A list of resources that should be displayed for the CRD
   417                            required:
   418                              - kind
   419                              - version
   420                            properties:
   421                              name:
   422                                type: string
   423                                description: If a CRD, the fully qualified name of the CustomResourceDefinition (e.g. my-resource-v1.app.coreos.com)
   424                              version:
   425                                type: string
   426                                description: The version of the resource kind
   427                              kind:
   428                                type: string
   429                                description: The kind field of the resource kind
   430                        statusDescriptors:
   431                          type: array
   432                          items:
   433                            type: object
   434                            description: A spec for a field in the status block of the CRD
   435                            required:
   436                              - path
   437                              - displayName
   438                              - description
   439                            properties:
   440                              path:
   441                                type: string
   442                                description: A jsonpath indexing into the status object on the CR where the the status value can be found.
   443                              displayName:
   444                                type: string
   445                                description: A human-readable name for the status entry.
   446                              description:
   447                                type: string
   448                                description: A description of the status entry.
   449                              x-descriptors:
   450                                type: array
   451                                description: A list of descriptors for the status entry that indicate the meaning of the field.
   452                                items:
   453                                  type: string
   454                              value:
   455                                type: object
   456                                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.
   457                        specDescriptors:
   458                          type: array
   459                          items:
   460                            type: object
   461                            description: A spec for a field in the spec block of the CRD
   462                            required:
   463                              - path
   464                              - displayName
   465                              - description
   466                            properties:
   467                              path:
   468                                type: string
   469                                description: A jsonpath indexing into the spec object on the CR where the the spec value can be found.
   470                              displayName:
   471                                type: string
   472                                description: A human-readable name for the spec entry.
   473                              description:
   474                                type: string
   475                                description: A description of the spec entry.
   476                              x-descriptors:
   477                                type: array
   478                                description: A list of descriptors for the spec entry that indicate the meaning of the field.
   479                                items:
   480                                  type: string
   481                              value:
   482                                type: object
   483                                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.
   484                        actionDescriptors:
   485                          type: array
   486                          items:
   487                            type: object
   488                            description: A spec for actions that can be performed on instances of the CRD
   489                            required:
   490                              - path
   491                              - displayName
   492                              - description
   493                            properties:
   494                              path:
   495                                type: string
   496                                description: A jsonpath indexing into the spec object on the CR where the the spec value can be found.
   497                              displayName:
   498                                type: string
   499                                description: A human-readable name for the action.
   500                              description:
   501                                type: string
   502                                description: A description of the action.
   503                              x-descriptors:
   504                                type: array
   505                                description: A list of descriptors for the action that indicate the meaning of the action.
   506                                items:
   507                                  type: string
   508                              value:
   509                                type: object
   510                                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.
   511                  required:
   512                    type: array
   513                    description: What resources this operator is responsible for managing. No two running operators should manage the same resource.
   514                    items:
   515                      type: object
   516                      required:
   517                        - name
   518                        - version
   519                        - kind
   520                        - displayName
   521                        - description
   522                      properties:
   523                        name:
   524                          type: string
   525                          description: Fully qualified name of the CustomResourceDefinition (e.g. my-resource-v1.app.coreos.com)
   526                        version:
   527                          type: string
   528                          description: The version field of the CustomResourceDefinition
   529                        kind:
   530                          type: string
   531                          description: The kind field of the CustomResourceDefinition
   532                        displayName:
   533                          type: string
   534                          description: A human-readable name for the CRD.
   535                        description:
   536                          type: string
   537                          description: A description of the CRD
   538                        statusDescriptors:
   539                          type: array
   540                          items:
   541                            type: object
   542                            description: A spec for a field in the status block of the CRD
   543                            required:
   544                              - path
   545                              - displayName
   546                              - description
   547                            properties:
   548                              path:
   549                                type: string
   550                                description: A jsonpath indexing into the status object on the CR where the the status value can be found.
   551                              displayName:
   552                                type: string
   553                                description: A human-readable name for the status entry.
   554                              description:
   555                                type: string
   556                                description: A description of the status entry.
   557                              x-descriptors:
   558                                type: array
   559                                description: A list of descriptors for the status entry that indicate the meaning of the field.
   560                                items:
   561                                  type: string
   562                              value:
   563                                type: object
   564                                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.
   565  
   566  
   567              install:
   568                type: object
   569                description: Information required to install this specific version of the operator software
   570                oneOf:
   571                - type: object
   572                  required:
   573                  - strategy
   574                  - spec
   575                  properties:
   576                    strategy:
   577                      type: string
   578                      enum: ['image']
   579                    spec:
   580                      type: object
   581                      required:
   582                      - image
   583                      properties:
   584                        image:
   585                          type: string
   586                - type: object
   587                  required:
   588                  - strategy
   589                  - spec
   590                  properties:
   591                    strategy:
   592                      type: string
   593                      enum: ['deployment']
   594                    spec:
   595                      type: object
   596                      required:
   597                      - deployments
   598                      properties:
   599                        deployments:
   600                          type: array
   601                          description: List of deployments to create
   602                          items:
   603                            type: object
   604                            description: A name and deployment to create in the cluster
   605                            required:
   606                              - name
   607                              - spec
   608                            properties:
   609                              name:
   610                                type: string
   611                                description: the consistent name of the deployment
   612                              spec:
   613                                type: object
   614                                description: The deployment spec to create in the cluster
   615                        permissions:
   616                          type: array
   617                          description: Permissions needed by the deployement to run correctly
   618                          items:
   619                            type: object
   620                            required:
   621                              - serviceAccountName
   622                              - rules
   623                            properties:
   624                              serviceAccountName:
   625                                type: string
   626                                description: The service account name to create for the deployment
   627                              rules:
   628                                type: array
   629                                items:
   630                                  type: object
   631                                  description: a rule required by the service account
   632                                  properties:
   633                                    apiGroups:
   634                                      type: array
   635                                      description: apiGroups the rule applies to
   636                                      items:
   637                                        type: string
   638                                    resources:
   639                                      type: array
   640                                      items:
   641                                        type: string
   642                                    resourceNames:
   643                                      type: array
   644                                      items:
   645                                        type: string
   646                                    verbs:
   647                                      type: array
   648                                      items:
   649                                        type: string
   650                                        enum:
   651                                          - "*"
   652                                          - get
   653                                          - list
   654                                          - watch
   655                                          - create
   656                                          - update
   657                                          - patch
   658                                          - delete
   659                                          - deletecollection
   660                                          - initialize
   661                        clusterPermissions:
   662                          type: array
   663                          description: Cluster permissions needed by the deployement to run correctly
   664                          items:
   665                            type: object
   666                            required:
   667                            - serviceAccountName
   668                            - rules
   669                            properties:
   670                              serviceAccountName:
   671                                type: string
   672                                description: The service account name to create for the deployment
   673                              rules:
   674                                type: array
   675                                items:
   676                                  type: object
   677                                  description: a rule required by the service account
   678                                  properties:
   679                                    apiGroups:
   680                                      type: array
   681                                      description: apiGroups the rule applies to
   682                                      items:
   683                                        type: string
   684                                    resources:
   685                                      type: array
   686                                      items:
   687                                        type: string
   688                                    resourceNames:
   689                                      type: array
   690                                      items:
   691                                        type: string
   692                                    verbs:
   693                                      type: array
   694                                      items:
   695                                        type: string
   696                                        enum:
   697                                        - "*"
   698                                        - get
   699                                        - list
   700                                        - watch
   701                                        - create
   702                                        - update
   703                                        - patch
   704                                        - delete
   705                                        - deletecollection
   706                                        - initialize
   707          status:
   708            type: object
   709            description: Status for a ClusterServiceVersion