github.com/1aal/kubeblocks@v0.0.0-20231107070852-e1c03e598921/deploy/helm/crds/extensions.kubeblocks.io_addons.yaml (about)

     1  apiVersion: apiextensions.k8s.io/v1
     2  kind: CustomResourceDefinition
     3  metadata:
     4    annotations:
     5      controller-gen.kubebuilder.io/version: v0.12.1
     6    labels:
     7      app.kubernetes.io/name: kubeblocks
     8    name: addons.extensions.kubeblocks.io
     9  spec:
    10    group: extensions.kubeblocks.io
    11    names:
    12      categories:
    13      - kubeblocks
    14      kind: Addon
    15      listKind: AddonList
    16      plural: addons
    17      singular: addon
    18    scope: Cluster
    19    versions:
    20    - additionalPrinterColumns:
    21      - description: addon types
    22        jsonPath: .spec.type
    23        name: TYPE
    24        type: string
    25      - description: status phase
    26        jsonPath: .status.phase
    27        name: STATUS
    28        type: string
    29      - jsonPath: .metadata.creationTimestamp
    30        name: AGE
    31        type: date
    32      name: v1alpha1
    33      schema:
    34        openAPIV3Schema:
    35          description: Addon is the Schema for the add-ons API.
    36          properties:
    37            apiVersion:
    38              description: 'APIVersion defines the versioned schema of this representation
    39                of an object. Servers should convert recognized schemas to the latest
    40                internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
    41              type: string
    42            kind:
    43              description: 'Kind is a string value representing the REST resource this
    44                object represents. Servers may infer this from the endpoint the client
    45                submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
    46              type: string
    47            metadata:
    48              type: object
    49            spec:
    50              description: AddonSpec defines the desired state of an add-on.
    51              properties:
    52                cliPlugins:
    53                  description: Plugin installation spec.
    54                  items:
    55                    properties:
    56                      description:
    57                        description: The description of the plugin.
    58                        type: string
    59                      indexRepository:
    60                        description: The index repository of the plugin.
    61                        type: string
    62                      name:
    63                        description: Name of the plugin.
    64                        type: string
    65                    required:
    66                    - indexRepository
    67                    - name
    68                    type: object
    69                  type: array
    70                defaultInstallValues:
    71                  description: Default installation parameters.
    72                  items:
    73                    properties:
    74                      enabled:
    75                        description: enabled can be set if there are no specific installation
    76                          attributes to be set.
    77                        type: boolean
    78                      extras:
    79                        description: Installs spec. for extra items.
    80                        items:
    81                          properties:
    82                            name:
    83                              description: Name of the item.
    84                              type: string
    85                            persistentVolumeEnabled:
    86                              description: Persistent Volume Enabled value.
    87                              type: boolean
    88                            replicas:
    89                              description: Replicas value.
    90                              format: int32
    91                              type: integer
    92                            resources:
    93                              description: Resource requirements.
    94                              properties:
    95                                limits:
    96                                  additionalProperties:
    97                                    anyOf:
    98                                    - type: integer
    99                                    - type: string
   100                                    pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
   101                                    x-kubernetes-int-or-string: true
   102                                  description: 'Limits describes the maximum amount
   103                                    of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/.'
   104                                  type: object
   105                                requests:
   106                                  additionalProperties:
   107                                    anyOf:
   108                                    - type: integer
   109                                    - type: string
   110                                    pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
   111                                    x-kubernetes-int-or-string: true
   112                                  description: 'Requests describes the minimum amount
   113                                    of compute resources required. If Requests is omitted
   114                                    for a container, it defaults to Limits if that is
   115                                    explicitly specified; otherwise, it defaults to
   116                                    an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/.'
   117                                  type: object
   118                              type: object
   119                            storageClass:
   120                              description: Storage class name.
   121                              type: string
   122                            tolerations:
   123                              description: Tolerations JSON array string value.
   124                              type: string
   125                          required:
   126                          - name
   127                          type: object
   128                        type: array
   129                        x-kubernetes-list-map-keys:
   130                        - name
   131                        x-kubernetes-list-type: map
   132                      persistentVolumeEnabled:
   133                        description: Persistent Volume Enabled value.
   134                        type: boolean
   135                      replicas:
   136                        description: Replicas value.
   137                        format: int32
   138                        type: integer
   139                      resources:
   140                        description: Resource requirements.
   141                        properties:
   142                          limits:
   143                            additionalProperties:
   144                              anyOf:
   145                              - type: integer
   146                              - type: string
   147                              pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
   148                              x-kubernetes-int-or-string: true
   149                            description: 'Limits describes the maximum amount of compute
   150                              resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/.'
   151                            type: object
   152                          requests:
   153                            additionalProperties:
   154                              anyOf:
   155                              - type: integer
   156                              - type: string
   157                              pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
   158                              x-kubernetes-int-or-string: true
   159                            description: 'Requests describes the minimum amount of compute
   160                              resources required. If Requests is omitted for a container,
   161                              it defaults to Limits if that is explicitly specified;
   162                              otherwise, it defaults to an implementation-defined value.
   163                              More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/.'
   164                            type: object
   165                        type: object
   166                      selectors:
   167                        description: Addon installs parameters selectors by default.
   168                          If multiple selectors are provided, all selectors must evaluate
   169                          to true.
   170                        items:
   171                          properties:
   172                            key:
   173                              description: The selector key. Valid values are KubeVersion,
   174                                KubeGitVersion and KubeProvider. "KubeVersion" the semver
   175                                expression of Kubernetes versions, i.e., v1.24. "KubeGitVersion"
   176                                may contain distro. info., i.e., v1.24.4+eks. "KubeProvider"
   177                                the Kubernetes provider, i.e., aws,gcp,azure,huaweiCloud,tencentCloud
   178                                etc.
   179                              enum:
   180                              - KubeGitVersion
   181                              - KubeVersion
   182                              - KubeProvider
   183                              type: string
   184                            operator:
   185                              description: "Represents a key's relationship to a set
   186                                of values. Valid operators are Contains, NotIn, DoesNotContain,
   187                                MatchRegex, and DoesNoteMatchRegex. \n Possible enum
   188                                values: `\"Contains\"` line contains a string. `\"DoesNotContain\"`
   189                                line does not contain a string. `\"MatchRegex\"` line
   190                                contains a match to the regular expression. `\"DoesNotMatchRegex\"`
   191                                line does not contain a match to the regular expression."
   192                              enum:
   193                              - Contains
   194                              - DoesNotContain
   195                              - MatchRegex
   196                              - DoesNotMatchRegex
   197                              type: string
   198                            values:
   199                              description: An array of string values. It serves as an
   200                                "OR" expression to the operator.
   201                              items:
   202                                type: string
   203                              type: array
   204                          required:
   205                          - key
   206                          - operator
   207                          type: object
   208                        type: array
   209                      storageClass:
   210                        description: Storage class name.
   211                        type: string
   212                      tolerations:
   213                        description: Tolerations JSON array string value.
   214                        type: string
   215                    type: object
   216                  minItems: 1
   217                  type: array
   218                description:
   219                  description: Addon description.
   220                  type: string
   221                helm:
   222                  description: Helm installation spec. It's processed only when type=helm.
   223                  properties:
   224                    chartLocationURL:
   225                      description: A Helm Chart location URL.
   226                      type: string
   227                    chartsImage:
   228                      description: chartsImage defines the image of Helm charts.
   229                      type: string
   230                    chartsPathInImage:
   231                      description: chartsPathInImage defines the path of Helm charts
   232                        in the image. It's used to copy Helm charts from the image to
   233                        the shared volume.
   234                      type: string
   235                    installOptions:
   236                      additionalProperties:
   237                        type: string
   238                      description: installOptions defines Helm release installation
   239                        options.
   240                      type: object
   241                    installValues:
   242                      description: HelmInstallValues defines Helm release installation
   243                        set values.
   244                      properties:
   245                        configMapRefs:
   246                          description: Selects a key of a ConfigMap item list. The value
   247                            of ConfigMap can be a JSON or YAML string content. Use a
   248                            key name with ".json" or ".yaml" or ".yml" extension name
   249                            to specify a content type.
   250                          items:
   251                            properties:
   252                              key:
   253                                description: The key to select.
   254                                type: string
   255                              name:
   256                                description: Object name of the referent.
   257                                pattern: ^[a-z0-9]([a-z0-9\.\-]*[a-z0-9])?$
   258                                type: string
   259                            required:
   260                            - key
   261                            - name
   262                            type: object
   263                          type: array
   264                        secretRefs:
   265                          description: Selects a key of a Secrets item list. The value
   266                            of Secrets can be a JSON or YAML string content. Use a key
   267                            name with ".json" or ".yaml" or ".yml" extension name to
   268                            specify a content type.
   269                          items:
   270                            properties:
   271                              key:
   272                                description: The key to select.
   273                                type: string
   274                              name:
   275                                description: Object name of the referent.
   276                                pattern: ^[a-z0-9]([a-z0-9\.\-]*[a-z0-9])?$
   277                                type: string
   278                            required:
   279                            - key
   280                            - name
   281                            type: object
   282                          type: array
   283                        setJSONValues:
   284                          description: Helm install set JSON values. It can specify
   285                            multiple or separate values with commas(key1=jsonval1,key2=jsonval2).
   286                          items:
   287                            type: string
   288                          type: array
   289                        setValues:
   290                          description: Helm install set values. It can specify multiple
   291                            or separate values with commas(key1=val1,key2=val2).
   292                          items:
   293                            type: string
   294                          type: array
   295                        urls:
   296                          items:
   297                            type: string
   298                          type: array
   299                      type: object
   300                    valuesMapping:
   301                      description: valuesMapping defines add-on normalized resources
   302                        parameters mapped to Helm values' keys.
   303                      properties:
   304                        extras:
   305                          description: Helm value mapping items for extra items.
   306                          items:
   307                            properties:
   308                              jsonMap:
   309                                description: 'jsonMap defines the "key" mapping values.
   310                                  The valid key is tolerations. Enum values explained:
   311                                  `"tolerations"` sets the toleration mapping key.'
   312                                properties:
   313                                  tolerations:
   314                                    description: tolerations sets the toleration mapping
   315                                      key.
   316                                    type: string
   317                                type: object
   318                              name:
   319                                description: Name of the item.
   320                                type: string
   321                              resources:
   322                                description: resources sets resources related mapping
   323                                  keys.
   324                                properties:
   325                                  cpu:
   326                                    description: cpu sets CPU requests and limits mapping
   327                                      keys.
   328                                    properties:
   329                                      limits:
   330                                        description: Limits value mapping key.
   331                                        type: string
   332                                      requests:
   333                                        description: Requests value mapping key.
   334                                        type: string
   335                                    type: object
   336                                  memory:
   337                                    description: memory sets Memory requests and limits
   338                                      mapping keys.
   339                                    properties:
   340                                      limits:
   341                                        description: Limits value mapping key.
   342                                        type: string
   343                                      requests:
   344                                        description: Requests value mapping key.
   345                                        type: string
   346                                    type: object
   347                                  storage:
   348                                    description: storage sets the storage size value
   349                                      mapping key.
   350                                    type: string
   351                                type: object
   352                              valueMap:
   353                                description: 'valueMap define the "key" mapping values.
   354                                  Valid keys are replicaCount, persistentVolumeEnabled,
   355                                  and storageClass. Enum values explained: `"replicaCount"`
   356                                  sets the replicaCount value mapping key. `"persistentVolumeEnabled"`
   357                                  sets the persistent volume enabled mapping key. `"storageClass"`
   358                                  sets the storageClass mapping key.'
   359                                properties:
   360                                  persistentVolumeEnabled:
   361                                    description: persistentVolumeEnabled sets the persistent
   362                                      volume enabled mapping key.
   363                                    type: string
   364                                  replicaCount:
   365                                    description: replicaCount sets the replicaCount
   366                                      value mapping key.
   367                                    type: string
   368                                  storageClass:
   369                                    description: storageClass sets the storageClass
   370                                      mapping key.
   371                                    type: string
   372                                type: object
   373                            required:
   374                            - name
   375                            type: object
   376                          type: array
   377                          x-kubernetes-list-map-keys:
   378                          - name
   379                          x-kubernetes-list-type: map
   380                        jsonMap:
   381                          description: 'jsonMap defines the "key" mapping values. The
   382                            valid key is tolerations. Enum values explained: `"tolerations"`
   383                            sets the toleration mapping key.'
   384                          properties:
   385                            tolerations:
   386                              description: tolerations sets the toleration mapping key.
   387                              type: string
   388                          type: object
   389                        resources:
   390                          description: resources sets resources related mapping keys.
   391                          properties:
   392                            cpu:
   393                              description: cpu sets CPU requests and limits mapping
   394                                keys.
   395                              properties:
   396                                limits:
   397                                  description: Limits value mapping key.
   398                                  type: string
   399                                requests:
   400                                  description: Requests value mapping key.
   401                                  type: string
   402                              type: object
   403                            memory:
   404                              description: memory sets Memory requests and limits mapping
   405                                keys.
   406                              properties:
   407                                limits:
   408                                  description: Limits value mapping key.
   409                                  type: string
   410                                requests:
   411                                  description: Requests value mapping key.
   412                                  type: string
   413                              type: object
   414                            storage:
   415                              description: storage sets the storage size value mapping
   416                                key.
   417                              type: string
   418                          type: object
   419                        valueMap:
   420                          description: 'valueMap define the "key" mapping values. Valid
   421                            keys are replicaCount, persistentVolumeEnabled, and storageClass.
   422                            Enum values explained: `"replicaCount"` sets the replicaCount
   423                            value mapping key. `"persistentVolumeEnabled"` sets the
   424                            persistent volume enabled mapping key. `"storageClass"`
   425                            sets the storageClass mapping key.'
   426                          properties:
   427                            persistentVolumeEnabled:
   428                              description: persistentVolumeEnabled sets the persistent
   429                                volume enabled mapping key.
   430                              type: string
   431                            replicaCount:
   432                              description: replicaCount sets the replicaCount value
   433                                mapping key.
   434                              type: string
   435                            storageClass:
   436                              description: storageClass sets the storageClass mapping
   437                                key.
   438                              type: string
   439                          type: object
   440                      type: object
   441                  required:
   442                  - chartLocationURL
   443                  type: object
   444                  x-kubernetes-validations:
   445                  - message: chartsImage is required when chartLocationURL starts with
   446                      'file://'
   447                    rule: 'self.chartLocationURL.startsWith(''file://'') ? has(self.chartsImage)
   448                      : true'
   449                install:
   450                  description: Installation parameters.
   451                  properties:
   452                    enabled:
   453                      description: enabled can be set if there are no specific installation
   454                        attributes to be set.
   455                      type: boolean
   456                    extras:
   457                      description: Installs spec. for extra items.
   458                      items:
   459                        properties:
   460                          name:
   461                            description: Name of the item.
   462                            type: string
   463                          persistentVolumeEnabled:
   464                            description: Persistent Volume Enabled value.
   465                            type: boolean
   466                          replicas:
   467                            description: Replicas value.
   468                            format: int32
   469                            type: integer
   470                          resources:
   471                            description: Resource requirements.
   472                            properties:
   473                              limits:
   474                                additionalProperties:
   475                                  anyOf:
   476                                  - type: integer
   477                                  - type: string
   478                                  pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
   479                                  x-kubernetes-int-or-string: true
   480                                description: 'Limits describes the maximum amount of
   481                                  compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/.'
   482                                type: object
   483                              requests:
   484                                additionalProperties:
   485                                  anyOf:
   486                                  - type: integer
   487                                  - type: string
   488                                  pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
   489                                  x-kubernetes-int-or-string: true
   490                                description: 'Requests describes the minimum amount
   491                                  of compute resources required. If Requests is omitted
   492                                  for a container, it defaults to Limits if that is
   493                                  explicitly specified; otherwise, it defaults to an
   494                                  implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/.'
   495                                type: object
   496                            type: object
   497                          storageClass:
   498                            description: Storage class name.
   499                            type: string
   500                          tolerations:
   501                            description: Tolerations JSON array string value.
   502                            type: string
   503                        required:
   504                        - name
   505                        type: object
   506                      type: array
   507                      x-kubernetes-list-map-keys:
   508                      - name
   509                      x-kubernetes-list-type: map
   510                    persistentVolumeEnabled:
   511                      description: Persistent Volume Enabled value.
   512                      type: boolean
   513                    replicas:
   514                      description: Replicas value.
   515                      format: int32
   516                      type: integer
   517                    resources:
   518                      description: Resource requirements.
   519                      properties:
   520                        limits:
   521                          additionalProperties:
   522                            anyOf:
   523                            - type: integer
   524                            - type: string
   525                            pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
   526                            x-kubernetes-int-or-string: true
   527                          description: 'Limits describes the maximum amount of compute
   528                            resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/.'
   529                          type: object
   530                        requests:
   531                          additionalProperties:
   532                            anyOf:
   533                            - type: integer
   534                            - type: string
   535                            pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
   536                            x-kubernetes-int-or-string: true
   537                          description: 'Requests describes the minimum amount of compute
   538                            resources required. If Requests is omitted for a container,
   539                            it defaults to Limits if that is explicitly specified; otherwise,
   540                            it defaults to an implementation-defined value. More info:
   541                            https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/.'
   542                          type: object
   543                      type: object
   544                    storageClass:
   545                      description: Storage class name.
   546                      type: string
   547                    tolerations:
   548                      description: Tolerations JSON array string value.
   549                      type: string
   550                  type: object
   551                installable:
   552                  description: Addon installable spec. It provides selector and auto-install
   553                    settings.
   554                  properties:
   555                    autoInstall:
   556                      default: false
   557                      description: autoInstall defines an add-on should be installed
   558                        automatically.
   559                      type: boolean
   560                    selectors:
   561                      description: Add-on installable selectors. If multiple selectors
   562                        are provided, all selectors must evaluate to true.
   563                      items:
   564                        properties:
   565                          key:
   566                            description: The selector key. Valid values are KubeVersion,
   567                              KubeGitVersion and KubeProvider. "KubeVersion" the semver
   568                              expression of Kubernetes versions, i.e., v1.24. "KubeGitVersion"
   569                              may contain distro. info., i.e., v1.24.4+eks. "KubeProvider"
   570                              the Kubernetes provider, i.e., aws,gcp,azure,huaweiCloud,tencentCloud
   571                              etc.
   572                            enum:
   573                            - KubeGitVersion
   574                            - KubeVersion
   575                            - KubeProvider
   576                            type: string
   577                          operator:
   578                            description: "Represents a key's relationship to a set of
   579                              values. Valid operators are Contains, NotIn, DoesNotContain,
   580                              MatchRegex, and DoesNoteMatchRegex. \n Possible enum values:
   581                              `\"Contains\"` line contains a string. `\"DoesNotContain\"`
   582                              line does not contain a string. `\"MatchRegex\"` line
   583                              contains a match to the regular expression. `\"DoesNotMatchRegex\"`
   584                              line does not contain a match to the regular expression."
   585                            enum:
   586                            - Contains
   587                            - DoesNotContain
   588                            - MatchRegex
   589                            - DoesNotMatchRegex
   590                            type: string
   591                          values:
   592                            description: An array of string values. It serves as an
   593                              "OR" expression to the operator.
   594                            items:
   595                              type: string
   596                            type: array
   597                        required:
   598                        - key
   599                        - operator
   600                        type: object
   601                      type: array
   602                  required:
   603                  - autoInstall
   604                  type: object
   605                type:
   606                  description: Add-on type. The valid value is helm.
   607                  enum:
   608                  - Helm
   609                  type: string
   610              required:
   611              - defaultInstallValues
   612              - type
   613              type: object
   614              x-kubernetes-validations:
   615              - message: spec.helm is required when spec.type is Helm, and forbidden
   616                  otherwise
   617                rule: 'has(self.type) && self.type == ''Helm'' ?  has(self.helm) : !has(self.helm)'
   618            status:
   619              description: AddonStatus defines the observed state of an add-on.
   620              properties:
   621                conditions:
   622                  description: Describes the current state of add-on API installation
   623                    conditions.
   624                  items:
   625                    description: "Condition contains details for one aspect of the current
   626                      state of this API Resource. --- This struct is intended for direct
   627                      use as an array at the field path .status.conditions.  For example,
   628                      \n type FooStatus struct{ // Represents the observations of a
   629                      foo's current state. // Known .status.conditions.type are: \"Available\",
   630                      \"Progressing\", and \"Degraded\" // +patchMergeKey=type // +patchStrategy=merge
   631                      // +listType=map // +listMapKey=type Conditions []metav1.Condition
   632                      `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\"
   633                      protobuf:\"bytes,1,rep,name=conditions\"` \n // other fields }"
   634                    properties:
   635                      lastTransitionTime:
   636                        description: lastTransitionTime is the last time the condition
   637                          transitioned from one status to another. This should be when
   638                          the underlying condition changed.  If that is not known, then
   639                          using the time when the API field changed is acceptable.
   640                        format: date-time
   641                        type: string
   642                      message:
   643                        description: message is a human readable message indicating
   644                          details about the transition. This may be an empty string.
   645                        maxLength: 32768
   646                        type: string
   647                      observedGeneration:
   648                        description: observedGeneration represents the .metadata.generation
   649                          that the condition was set based upon. For instance, if .metadata.generation
   650                          is currently 12, but the .status.conditions[x].observedGeneration
   651                          is 9, the condition is out of date with respect to the current
   652                          state of the instance.
   653                        format: int64
   654                        minimum: 0
   655                        type: integer
   656                      reason:
   657                        description: reason contains a programmatic identifier indicating
   658                          the reason for the condition's last transition. Producers
   659                          of specific condition types may define expected values and
   660                          meanings for this field, and whether the values are considered
   661                          a guaranteed API. The value should be a CamelCase string.
   662                          This field may not be empty.
   663                        maxLength: 1024
   664                        minLength: 1
   665                        pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$
   666                        type: string
   667                      status:
   668                        description: status of the condition, one of True, False, Unknown.
   669                        enum:
   670                        - "True"
   671                        - "False"
   672                        - Unknown
   673                        type: string
   674                      type:
   675                        description: type of condition in CamelCase or in foo.example.com/CamelCase.
   676                          --- Many .condition.type values are consistent across resources
   677                          like Available, but because arbitrary conditions can be useful
   678                          (see .node.status.conditions), the ability to deconflict is
   679                          important. The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)
   680                        maxLength: 316
   681                        pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$
   682                        type: string
   683                    required:
   684                    - lastTransitionTime
   685                    - message
   686                    - reason
   687                    - status
   688                    - type
   689                    type: object
   690                  type: array
   691                observedGeneration:
   692                  description: observedGeneration is the most recent generation observed
   693                    for this add-on. It corresponds to the add-on's generation, which
   694                    is updated on mutation by the API Server.
   695                  format: int64
   696                  type: integer
   697                phase:
   698                  description: Add-on installation phases. Valid values are Disabled,
   699                    Enabled, Failed, Enabling, Disabling.
   700                  enum:
   701                  - Disabled
   702                  - Enabled
   703                  - Failed
   704                  - Enabling
   705                  - Disabling
   706                  type: string
   707              type: object
   708          type: object
   709      served: true
   710      storage: true
   711      subresources:
   712        status: {}