github.com/1aal/kubeblocks@v0.0.0-20231107070852-e1c03e598921/deploy/helm/crds/apps.kubeblocks.io_servicedescriptors.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: servicedescriptors.apps.kubeblocks.io
     9  spec:
    10    group: apps.kubeblocks.io
    11    names:
    12      categories:
    13      - kubeblocks
    14      - all
    15      kind: ServiceDescriptor
    16      listKind: ServiceDescriptorList
    17      plural: servicedescriptors
    18      shortNames:
    19      - sd
    20      singular: servicedescriptor
    21    scope: Namespaced
    22    versions:
    23    - additionalPrinterColumns:
    24      - description: service kind
    25        jsonPath: .spec.serviceKind
    26        name: SERVICE_KIND
    27        type: string
    28      - description: service version
    29        jsonPath: .spec.serviceVersion
    30        name: SERVICE_VERSION
    31        type: string
    32      - description: status phase
    33        jsonPath: .status.phase
    34        name: STATUS
    35        type: string
    36      - jsonPath: .metadata.creationTimestamp
    37        name: AGE
    38        type: date
    39      name: v1alpha1
    40      schema:
    41        openAPIV3Schema:
    42          description: ServiceDescriptor is the Schema for the servicedescriptors API
    43          properties:
    44            apiVersion:
    45              description: 'APIVersion defines the versioned schema of this representation
    46                of an object. Servers should convert recognized schemas to the latest
    47                internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
    48              type: string
    49            kind:
    50              description: 'Kind is a string value representing the REST resource this
    51                object represents. Servers may infer this from the endpoint the client
    52                submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
    53              type: string
    54            metadata:
    55              type: object
    56            spec:
    57              description: ServiceDescriptorSpec defines the desired state of ServiceDescriptor
    58              properties:
    59                auth:
    60                  description: auth is the auth of the service connection credential.
    61                  properties:
    62                    password:
    63                      description: service connection based-on username and password
    64                        credential.
    65                      properties:
    66                        value:
    67                          description: 'Variable references $(VAR_NAME) are expanded
    68                            using the previously defined environment variables in the
    69                            container and any service environment variables. If a variable
    70                            cannot be resolved, the reference in the input string will
    71                            be unchanged. Double $$ are reduced to a single $, which
    72                            allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)"
    73                            will produce the string literal "$(VAR_NAME)". Escaped references
    74                            will never be expanded, regardless of whether the variable
    75                            exists or not. Defaults to "".'
    76                          type: string
    77                        valueFrom:
    78                          description: Source for the environment variable's value.
    79                            Cannot be used if value is not empty.
    80                          properties:
    81                            configMapKeyRef:
    82                              description: Selects a key of a ConfigMap.
    83                              properties:
    84                                key:
    85                                  description: The key to select.
    86                                  type: string
    87                                name:
    88                                  description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
    89                                    TODO: Add other useful fields. apiVersion, kind,
    90                                    uid?'
    91                                  type: string
    92                                optional:
    93                                  description: Specify whether the ConfigMap or its
    94                                    key must be defined
    95                                  type: boolean
    96                              required:
    97                              - key
    98                              type: object
    99                              x-kubernetes-map-type: atomic
   100                            fieldRef:
   101                              description: 'Selects a field of the pod: supports metadata.name,
   102                                metadata.namespace, `metadata.labels[''<KEY>'']`, `metadata.annotations[''<KEY>'']`,
   103                                spec.nodeName, spec.serviceAccountName, status.hostIP,
   104                                status.podIP, status.podIPs.'
   105                              properties:
   106                                apiVersion:
   107                                  description: Version of the schema the FieldPath is
   108                                    written in terms of, defaults to "v1".
   109                                  type: string
   110                                fieldPath:
   111                                  description: Path of the field to select in the specified
   112                                    API version.
   113                                  type: string
   114                              required:
   115                              - fieldPath
   116                              type: object
   117                              x-kubernetes-map-type: atomic
   118                            resourceFieldRef:
   119                              description: 'Selects a resource of the container: only
   120                                resources limits and requests (limits.cpu, limits.memory,
   121                                limits.ephemeral-storage, requests.cpu, requests.memory
   122                                and requests.ephemeral-storage) are currently supported.'
   123                              properties:
   124                                containerName:
   125                                  description: 'Container name: required for volumes,
   126                                    optional for env vars'
   127                                  type: string
   128                                divisor:
   129                                  anyOf:
   130                                  - type: integer
   131                                  - type: string
   132                                  description: Specifies the output format of the exposed
   133                                    resources, defaults to "1"
   134                                  pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
   135                                  x-kubernetes-int-or-string: true
   136                                resource:
   137                                  description: 'Required: resource to select'
   138                                  type: string
   139                              required:
   140                              - resource
   141                              type: object
   142                              x-kubernetes-map-type: atomic
   143                            secretKeyRef:
   144                              description: Selects a key of a secret in the pod's namespace
   145                              properties:
   146                                key:
   147                                  description: The key of the secret to select from.  Must
   148                                    be a valid secret key.
   149                                  type: string
   150                                name:
   151                                  description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
   152                                    TODO: Add other useful fields. apiVersion, kind,
   153                                    uid?'
   154                                  type: string
   155                                optional:
   156                                  description: Specify whether the Secret or its key
   157                                    must be defined
   158                                  type: boolean
   159                              required:
   160                              - key
   161                              type: object
   162                              x-kubernetes-map-type: atomic
   163                          type: object
   164                      type: object
   165                    username:
   166                      description: service connection based-on username and password
   167                        credential.
   168                      properties:
   169                        value:
   170                          description: 'Variable references $(VAR_NAME) are expanded
   171                            using the previously defined environment variables in the
   172                            container and any service environment variables. If a variable
   173                            cannot be resolved, the reference in the input string will
   174                            be unchanged. Double $$ are reduced to a single $, which
   175                            allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)"
   176                            will produce the string literal "$(VAR_NAME)". Escaped references
   177                            will never be expanded, regardless of whether the variable
   178                            exists or not. Defaults to "".'
   179                          type: string
   180                        valueFrom:
   181                          description: Source for the environment variable's value.
   182                            Cannot be used if value is not empty.
   183                          properties:
   184                            configMapKeyRef:
   185                              description: Selects a key of a ConfigMap.
   186                              properties:
   187                                key:
   188                                  description: The key to select.
   189                                  type: string
   190                                name:
   191                                  description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
   192                                    TODO: Add other useful fields. apiVersion, kind,
   193                                    uid?'
   194                                  type: string
   195                                optional:
   196                                  description: Specify whether the ConfigMap or its
   197                                    key must be defined
   198                                  type: boolean
   199                              required:
   200                              - key
   201                              type: object
   202                              x-kubernetes-map-type: atomic
   203                            fieldRef:
   204                              description: 'Selects a field of the pod: supports metadata.name,
   205                                metadata.namespace, `metadata.labels[''<KEY>'']`, `metadata.annotations[''<KEY>'']`,
   206                                spec.nodeName, spec.serviceAccountName, status.hostIP,
   207                                status.podIP, status.podIPs.'
   208                              properties:
   209                                apiVersion:
   210                                  description: Version of the schema the FieldPath is
   211                                    written in terms of, defaults to "v1".
   212                                  type: string
   213                                fieldPath:
   214                                  description: Path of the field to select in the specified
   215                                    API version.
   216                                  type: string
   217                              required:
   218                              - fieldPath
   219                              type: object
   220                              x-kubernetes-map-type: atomic
   221                            resourceFieldRef:
   222                              description: 'Selects a resource of the container: only
   223                                resources limits and requests (limits.cpu, limits.memory,
   224                                limits.ephemeral-storage, requests.cpu, requests.memory
   225                                and requests.ephemeral-storage) are currently supported.'
   226                              properties:
   227                                containerName:
   228                                  description: 'Container name: required for volumes,
   229                                    optional for env vars'
   230                                  type: string
   231                                divisor:
   232                                  anyOf:
   233                                  - type: integer
   234                                  - type: string
   235                                  description: Specifies the output format of the exposed
   236                                    resources, defaults to "1"
   237                                  pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
   238                                  x-kubernetes-int-or-string: true
   239                                resource:
   240                                  description: 'Required: resource to select'
   241                                  type: string
   242                              required:
   243                              - resource
   244                              type: object
   245                              x-kubernetes-map-type: atomic
   246                            secretKeyRef:
   247                              description: Selects a key of a secret in the pod's namespace
   248                              properties:
   249                                key:
   250                                  description: The key of the secret to select from.  Must
   251                                    be a valid secret key.
   252                                  type: string
   253                                name:
   254                                  description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
   255                                    TODO: Add other useful fields. apiVersion, kind,
   256                                    uid?'
   257                                  type: string
   258                                optional:
   259                                  description: Specify whether the Secret or its key
   260                                    must be defined
   261                                  type: boolean
   262                              required:
   263                              - key
   264                              type: object
   265                              x-kubernetes-map-type: atomic
   266                          type: object
   267                      type: object
   268                  type: object
   269                endpoint:
   270                  description: endpoint is the endpoint of the service connection credential.
   271                  properties:
   272                    value:
   273                      description: 'Variable references $(VAR_NAME) are expanded using
   274                        the previously defined environment variables in the container
   275                        and any service environment variables. If a variable cannot
   276                        be resolved, the reference in the input string will be unchanged.
   277                        Double $$ are reduced to a single $, which allows for escaping
   278                        the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will produce the
   279                        string literal "$(VAR_NAME)". Escaped references will never
   280                        be expanded, regardless of whether the variable exists or not.
   281                        Defaults to "".'
   282                      type: string
   283                    valueFrom:
   284                      description: Source for the environment variable's value. Cannot
   285                        be used if value is not empty.
   286                      properties:
   287                        configMapKeyRef:
   288                          description: Selects a key of a ConfigMap.
   289                          properties:
   290                            key:
   291                              description: The key to select.
   292                              type: string
   293                            name:
   294                              description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
   295                                TODO: Add other useful fields. apiVersion, kind, uid?'
   296                              type: string
   297                            optional:
   298                              description: Specify whether the ConfigMap or its key
   299                                must be defined
   300                              type: boolean
   301                          required:
   302                          - key
   303                          type: object
   304                          x-kubernetes-map-type: atomic
   305                        fieldRef:
   306                          description: 'Selects a field of the pod: supports metadata.name,
   307                            metadata.namespace, `metadata.labels[''<KEY>'']`, `metadata.annotations[''<KEY>'']`,
   308                            spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP,
   309                            status.podIPs.'
   310                          properties:
   311                            apiVersion:
   312                              description: Version of the schema the FieldPath is written
   313                                in terms of, defaults to "v1".
   314                              type: string
   315                            fieldPath:
   316                              description: Path of the field to select in the specified
   317                                API version.
   318                              type: string
   319                          required:
   320                          - fieldPath
   321                          type: object
   322                          x-kubernetes-map-type: atomic
   323                        resourceFieldRef:
   324                          description: 'Selects a resource of the container: only resources
   325                            limits and requests (limits.cpu, limits.memory, limits.ephemeral-storage,
   326                            requests.cpu, requests.memory and requests.ephemeral-storage)
   327                            are currently supported.'
   328                          properties:
   329                            containerName:
   330                              description: 'Container name: required for volumes, optional
   331                                for env vars'
   332                              type: string
   333                            divisor:
   334                              anyOf:
   335                              - type: integer
   336                              - type: string
   337                              description: Specifies the output format of the exposed
   338                                resources, defaults to "1"
   339                              pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
   340                              x-kubernetes-int-or-string: true
   341                            resource:
   342                              description: 'Required: resource to select'
   343                              type: string
   344                          required:
   345                          - resource
   346                          type: object
   347                          x-kubernetes-map-type: atomic
   348                        secretKeyRef:
   349                          description: Selects a key of a secret in the pod's namespace
   350                          properties:
   351                            key:
   352                              description: The key of the secret to select from.  Must
   353                                be a valid secret key.
   354                              type: string
   355                            name:
   356                              description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
   357                                TODO: Add other useful fields. apiVersion, kind, uid?'
   358                              type: string
   359                            optional:
   360                              description: Specify whether the Secret or its key must
   361                                be defined
   362                              type: boolean
   363                          required:
   364                          - key
   365                          type: object
   366                          x-kubernetes-map-type: atomic
   367                      type: object
   368                  type: object
   369                port:
   370                  description: port is the port of the service connection credential.
   371                  properties:
   372                    value:
   373                      description: 'Variable references $(VAR_NAME) are expanded using
   374                        the previously defined environment variables in the container
   375                        and any service environment variables. If a variable cannot
   376                        be resolved, the reference in the input string will be unchanged.
   377                        Double $$ are reduced to a single $, which allows for escaping
   378                        the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will produce the
   379                        string literal "$(VAR_NAME)". Escaped references will never
   380                        be expanded, regardless of whether the variable exists or not.
   381                        Defaults to "".'
   382                      type: string
   383                    valueFrom:
   384                      description: Source for the environment variable's value. Cannot
   385                        be used if value is not empty.
   386                      properties:
   387                        configMapKeyRef:
   388                          description: Selects a key of a ConfigMap.
   389                          properties:
   390                            key:
   391                              description: The key to select.
   392                              type: string
   393                            name:
   394                              description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
   395                                TODO: Add other useful fields. apiVersion, kind, uid?'
   396                              type: string
   397                            optional:
   398                              description: Specify whether the ConfigMap or its key
   399                                must be defined
   400                              type: boolean
   401                          required:
   402                          - key
   403                          type: object
   404                          x-kubernetes-map-type: atomic
   405                        fieldRef:
   406                          description: 'Selects a field of the pod: supports metadata.name,
   407                            metadata.namespace, `metadata.labels[''<KEY>'']`, `metadata.annotations[''<KEY>'']`,
   408                            spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP,
   409                            status.podIPs.'
   410                          properties:
   411                            apiVersion:
   412                              description: Version of the schema the FieldPath is written
   413                                in terms of, defaults to "v1".
   414                              type: string
   415                            fieldPath:
   416                              description: Path of the field to select in the specified
   417                                API version.
   418                              type: string
   419                          required:
   420                          - fieldPath
   421                          type: object
   422                          x-kubernetes-map-type: atomic
   423                        resourceFieldRef:
   424                          description: 'Selects a resource of the container: only resources
   425                            limits and requests (limits.cpu, limits.memory, limits.ephemeral-storage,
   426                            requests.cpu, requests.memory and requests.ephemeral-storage)
   427                            are currently supported.'
   428                          properties:
   429                            containerName:
   430                              description: 'Container name: required for volumes, optional
   431                                for env vars'
   432                              type: string
   433                            divisor:
   434                              anyOf:
   435                              - type: integer
   436                              - type: string
   437                              description: Specifies the output format of the exposed
   438                                resources, defaults to "1"
   439                              pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
   440                              x-kubernetes-int-or-string: true
   441                            resource:
   442                              description: 'Required: resource to select'
   443                              type: string
   444                          required:
   445                          - resource
   446                          type: object
   447                          x-kubernetes-map-type: atomic
   448                        secretKeyRef:
   449                          description: Selects a key of a secret in the pod's namespace
   450                          properties:
   451                            key:
   452                              description: The key of the secret to select from.  Must
   453                                be a valid secret key.
   454                              type: string
   455                            name:
   456                              description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
   457                                TODO: Add other useful fields. apiVersion, kind, uid?'
   458                              type: string
   459                            optional:
   460                              description: Specify whether the Secret or its key must
   461                                be defined
   462                              type: boolean
   463                          required:
   464                          - key
   465                          type: object
   466                          x-kubernetes-map-type: atomic
   467                      type: object
   468                  type: object
   469                serviceKind:
   470                  description: service kind, indicating the type or nature of the service.
   471                    It should be well-known application cluster type, e.g. {mysql, redis,
   472                    mongodb}. The serviceKind is case-insensitive and supports abbreviations
   473                    for some well-known databases. For example, both 'zk' and 'zookeeper'
   474                    will be considered as a ZooKeeper cluster, and 'pg', 'postgres',
   475                    'postgresql' will all be considered as a PostgreSQL cluster.
   476                  type: string
   477                serviceVersion:
   478                  description: The version of the service reference.
   479                  type: string
   480              required:
   481              - serviceKind
   482              - serviceVersion
   483              type: object
   484            status:
   485              description: ServiceDescriptorStatus defines the observed state of ServiceDescriptor
   486              properties:
   487                message:
   488                  description: A human-readable message indicating details about why
   489                    the ServiceConnectionCredential is in this phase.
   490                  type: string
   491                observedGeneration:
   492                  description: generation number
   493                  format: int64
   494                  type: integer
   495                phase:
   496                  description: phase - in list of [Available,Unavailable]
   497                  enum:
   498                  - Available
   499                  - Unavailable
   500                  type: string
   501              type: object
   502          type: object
   503      served: true
   504      storage: true
   505      subresources:
   506        status: {}