github.com/giantswarm/apiextensions/v2@v2.6.2/config/crd/v1/provider.giantswarm.io_kvmconfigs.yaml (about)

     1  
     2  ---
     3  apiVersion: apiextensions.k8s.io/v1
     4  kind: CustomResourceDefinition
     5  metadata:
     6    annotations:
     7      controller-gen.kubebuilder.io/version: v0.2.4
     8    creationTimestamp: null
     9    name: kvmconfigs.provider.giantswarm.io
    10  spec:
    11    group: provider.giantswarm.io
    12    names:
    13      categories:
    14      - giantswarm
    15      - kvm
    16      kind: KVMConfig
    17      listKind: KVMConfigList
    18      plural: kvmconfigs
    19      singular: kvmconfig
    20    scope: Namespaced
    21    versions:
    22    - name: v1alpha1
    23      schema:
    24        openAPIV3Schema:
    25          properties:
    26            apiVersion:
    27              description: 'APIVersion defines the versioned schema of this representation
    28                of an object. Servers should convert recognized schemas to the latest
    29                internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
    30              type: string
    31            kind:
    32              description: 'Kind is a string value representing the REST resource this
    33                object represents. Servers may infer this from the endpoint the client
    34                submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
    35              type: string
    36            metadata:
    37              type: object
    38            spec:
    39              properties:
    40                cluster:
    41                  properties:
    42                    calico:
    43                      properties:
    44                        cidr:
    45                          type: integer
    46                        mtu:
    47                          type: integer
    48                        subnet:
    49                          type: string
    50                      required:
    51                      - cidr
    52                      - mtu
    53                      - subnet
    54                      type: object
    55                    customer:
    56                      properties:
    57                        id:
    58                          type: string
    59                      required:
    60                      - id
    61                      type: object
    62                    docker:
    63                      properties:
    64                        daemon:
    65                          properties:
    66                            cidr:
    67                              type: string
    68                          required:
    69                          - cidr
    70                          type: object
    71                      required:
    72                      - daemon
    73                      type: object
    74                    etcd:
    75                      properties:
    76                        altNames:
    77                          type: string
    78                        domain:
    79                          type: string
    80                        port:
    81                          type: integer
    82                        prefix:
    83                          type: string
    84                      required:
    85                      - altNames
    86                      - domain
    87                      - port
    88                      - prefix
    89                      type: object
    90                    id:
    91                      type: string
    92                    kubernetes:
    93                      properties:
    94                        api:
    95                          properties:
    96                            clusterIPRange:
    97                              type: string
    98                            domain:
    99                              type: string
   100                            securePort:
   101                              type: integer
   102                          required:
   103                          - clusterIPRange
   104                          - domain
   105                          - securePort
   106                          type: object
   107                        cloudProvider:
   108                          type: string
   109                        dns:
   110                          properties:
   111                            ip:
   112                              type: string
   113                          required:
   114                          - ip
   115                          type: object
   116                        domain:
   117                          type: string
   118                        ingressController:
   119                          properties:
   120                            docker:
   121                              properties:
   122                                image:
   123                                  type: string
   124                              required:
   125                              - image
   126                              type: object
   127                            domain:
   128                              type: string
   129                            insecurePort:
   130                              type: integer
   131                            securePort:
   132                              type: integer
   133                            wildcardDomain:
   134                              type: string
   135                          required:
   136                          - docker
   137                          - domain
   138                          - insecurePort
   139                          - securePort
   140                          - wildcardDomain
   141                          type: object
   142                        kubelet:
   143                          properties:
   144                            altNames:
   145                              type: string
   146                            domain:
   147                              type: string
   148                            labels:
   149                              type: string
   150                            port:
   151                              type: integer
   152                          required:
   153                          - altNames
   154                          - domain
   155                          - labels
   156                          - port
   157                          type: object
   158                        networkSetup:
   159                          properties:
   160                            docker:
   161                              properties:
   162                                image:
   163                                  type: string
   164                              required:
   165                              - image
   166                              type: object
   167                            kubeProxy:
   168                              description: ClusterKubernetesNetworkSetupKubeProxy describes
   169                                values passed to the kube-proxy running in a tenant
   170                                cluster.
   171                              properties:
   172                                conntrackMaxPerCore:
   173                                  description: Maximum number of NAT connections to
   174                                    track per CPU core (0 to leave the limit as-is and
   175                                    ignore conntrack-min). Passed to kube-proxy as --conntrack-max-per-core.
   176                                  type: integer
   177                              required:
   178                              - conntrackMaxPerCore
   179                              type: object
   180                          required:
   181                          - docker
   182                          - kubeProxy
   183                          type: object
   184                        ssh:
   185                          properties:
   186                            userList:
   187                              items:
   188                                properties:
   189                                  name:
   190                                    type: string
   191                                  publicKey:
   192                                    type: string
   193                                required:
   194                                - name
   195                                - publicKey
   196                                type: object
   197                              type: array
   198                          required:
   199                          - userList
   200                          type: object
   201                      required:
   202                      - api
   203                      - cloudProvider
   204                      - dns
   205                      - domain
   206                      - ingressController
   207                      - kubelet
   208                      - networkSetup
   209                      - ssh
   210                      type: object
   211                    masters:
   212                      items:
   213                        properties:
   214                          id:
   215                            type: string
   216                        required:
   217                        - id
   218                        type: object
   219                      type: array
   220                    scaling:
   221                      properties:
   222                        max:
   223                          description: Max defines maximum number of worker nodes guest
   224                            cluster is allowed to have.
   225                          type: integer
   226                        min:
   227                          description: Min defines minimum number of worker nodes required
   228                            to be present in guest cluster.
   229                          type: integer
   230                      required:
   231                      - max
   232                      - min
   233                      type: object
   234                    version:
   235                      description: Version is DEPRECATED and should just be dropped.
   236                      type: string
   237                    workers:
   238                      items:
   239                        properties:
   240                          id:
   241                            type: string
   242                        required:
   243                        - id
   244                        type: object
   245                      type: array
   246                  required:
   247                  - calico
   248                  - customer
   249                  - docker
   250                  - etcd
   251                  - id
   252                  - kubernetes
   253                  - masters
   254                  - scaling
   255                  - version
   256                  type: object
   257                kvm:
   258                  properties:
   259                    endpointUpdater:
   260                      properties:
   261                        docker:
   262                          properties:
   263                            image:
   264                              type: string
   265                          required:
   266                          - image
   267                          type: object
   268                      required:
   269                      - docker
   270                      type: object
   271                    k8sKVM:
   272                      properties:
   273                        docker:
   274                          properties:
   275                            image:
   276                              type: string
   277                          required:
   278                          - image
   279                          type: object
   280                        storageType:
   281                          type: string
   282                      required:
   283                      - docker
   284                      - storageType
   285                      type: object
   286                    masters:
   287                      items:
   288                        properties:
   289                          cpus:
   290                            type: integer
   291                          disk:
   292                            format: double
   293                            type: number
   294                          dockerVolumeSizeGB:
   295                            type: integer
   296                          memory:
   297                            type: string
   298                        required:
   299                        - cpus
   300                        - disk
   301                        - dockerVolumeSizeGB
   302                        - memory
   303                        type: object
   304                      type: array
   305                    network:
   306                      properties:
   307                        flannel:
   308                          properties:
   309                            vni:
   310                              type: integer
   311                          required:
   312                          - vni
   313                          type: object
   314                      required:
   315                      - flannel
   316                      type: object
   317                    nodeController:
   318                      description: NOTE THIS IS DEPRECATED
   319                      properties:
   320                        docker:
   321                          description: NOTE THIS IS DEPRECATED
   322                          properties:
   323                            image:
   324                              type: string
   325                          required:
   326                          - image
   327                          type: object
   328                      required:
   329                      - docker
   330                      type: object
   331                    portMappings:
   332                      items:
   333                        properties:
   334                          name:
   335                            type: string
   336                          nodePort:
   337                            type: integer
   338                          targetPort:
   339                            type: integer
   340                        required:
   341                        - name
   342                        - nodePort
   343                        - targetPort
   344                        type: object
   345                      type: array
   346                    workers:
   347                      items:
   348                        properties:
   349                          cpus:
   350                            type: integer
   351                          disk:
   352                            format: double
   353                            type: number
   354                          dockerVolumeSizeGB:
   355                            type: integer
   356                          memory:
   357                            type: string
   358                        required:
   359                        - cpus
   360                        - disk
   361                        - dockerVolumeSizeGB
   362                        - memory
   363                        type: object
   364                      type: array
   365                  required:
   366                  - endpointUpdater
   367                  - k8sKVM
   368                  - masters
   369                  - network
   370                  - nodeController
   371                  - portMappings
   372                  - workers
   373                  type: object
   374                versionBundle:
   375                  properties:
   376                    version:
   377                      type: string
   378                  required:
   379                  - version
   380                  type: object
   381              required:
   382              - cluster
   383              - kvm
   384              - versionBundle
   385              type: object
   386            status:
   387              properties:
   388                cluster:
   389                  properties:
   390                    conditions:
   391                      description: Conditions is a list of status information expressing
   392                        the current conditional state of a guest cluster. This may reflect
   393                        the status of the guest cluster being updating or being up to
   394                        date.
   395                      items:
   396                        description: StatusClusterCondition expresses the conditions
   397                          in which a guest cluster may is.
   398                        properties:
   399                          lastTransitionTime:
   400                            description: LastTransitionTime is the last time the condition
   401                              transitioned from one status to another.
   402                            format: date-time
   403                            nullable: true
   404                            type: string
   405                          status:
   406                            description: Status may be True, False or Unknown.
   407                            type: string
   408                          type:
   409                            description: Type may be Creating, Created, Scaling, Scaled,
   410                              Draining, Drained, Updating, Updated, Deleting, Deleted.
   411                            type: string
   412                        type: object
   413                      nullable: true
   414                      type: array
   415                    network:
   416                      description: StatusClusterNetwork expresses the network segment
   417                        that is allocated for a guest cluster.
   418                      nullable: true
   419                      properties:
   420                        cidr:
   421                          type: string
   422                      type: object
   423                    nodes:
   424                      description: Nodes is a list of guest cluster node information
   425                        reflecting the current state of the guest cluster nodes.
   426                      items:
   427                        description: StatusClusterNode holds information about a guest
   428                          cluster node.
   429                        properties:
   430                          labels:
   431                            additionalProperties:
   432                              type: string
   433                            description: Labels contains the kubernetes labels for corresponding
   434                              node.
   435                            nullable: true
   436                            type: object
   437                          lastTransitionTime:
   438                            description: LastTransitionTime is the last time the condition
   439                              transitioned from one status to another.
   440                            format: date-time
   441                            nullable: true
   442                            type: string
   443                          name:
   444                            description: Name referrs to a tenant cluster node name.
   445                            type: string
   446                          version:
   447                            description: Version referrs to the version used by the
   448                              node as mandated by the provider operator.
   449                            type: string
   450                        type: object
   451                      nullable: true
   452                      type: array
   453                    resources:
   454                      description: Resources is a list of arbitrary conditions of operatorkit
   455                        resource implementations.
   456                      items:
   457                        description: Resource is structure holding arbitrary conditions
   458                          of operatorkit resource implementations. Imagine an operator
   459                          implements an instance resource. This resource may operates
   460                          sequentially but has to operate based on a certain system
   461                          state it manages. So it tracks the status as needed here specific
   462                          to its own implementation and means in order to fulfil its
   463                          premise.
   464                        properties:
   465                          conditions:
   466                            items:
   467                              description: StatusClusterResourceCondition expresses
   468                                the conditions in which an operatorkit resource may
   469                                is.
   470                              properties:
   471                                lastTransitionTime:
   472                                  description: LastTransitionTime is the last time the
   473                                    condition transitioned from one status to another.
   474                                  format: date-time
   475                                  nullable: true
   476                                  type: string
   477                                status:
   478                                  description: Status may be True, False or Unknown.
   479                                  type: string
   480                                type:
   481                                  description: Type may be anything an operatorkit resource
   482                                    may define.
   483                                  type: string
   484                              type: object
   485                            nullable: true
   486                            type: array
   487                          name:
   488                            type: string
   489                        type: object
   490                      nullable: true
   491                      type: array
   492                    scaling:
   493                      description: StatusClusterScaling expresses the current status
   494                        of desired number of worker nodes in guest cluster.
   495                      nullable: true
   496                      properties:
   497                        desiredCapacity:
   498                          type: integer
   499                      type: object
   500                    versions:
   501                      description: Versions is a list that acts like a historical track
   502                        record of versions a guest cluster went through. A version is
   503                        only added to the list as soon as the guest cluster successfully
   504                        migrated to the version added here.
   505                      items:
   506                        description: StatusClusterVersion expresses the versions in
   507                          which a guest cluster was and may still be.
   508                        properties:
   509                          date:
   510                            description: "TODO date is deprecated due to LastTransitionTime
   511                              This can be removed ones the new properties are properly
   512                              used in all tenant clusters. \n     https://github.com/giantswarm/giantswarm/issues/3988"
   513                            format: date-time
   514                            nullable: true
   515                            type: string
   516                          lastTransitionTime:
   517                            description: LastTransitionTime is the last time the condition
   518                              transitioned from one status to another.
   519                            format: date-time
   520                            nullable: true
   521                            type: string
   522                          semver:
   523                            description: Semver is some semver version, e.g. 1.0.0.
   524                            type: string
   525                        type: object
   526                      nullable: true
   527                      type: array
   528                  type: object
   529                kvm:
   530                  properties:
   531                    nodeIndexes:
   532                      additionalProperties:
   533                        type: integer
   534                      description: NodeIndexes is a map from nodeID -> nodeIndex. This
   535                        is used to create deterministic iSCSI initiator names.
   536                      nullable: true
   537                      type: object
   538                  type: object
   539              required:
   540              - cluster
   541              - kvm
   542              type: object
   543          required:
   544          - metadata
   545          - spec
   546          type: object
   547      served: true
   548      storage: true
   549      subresources:
   550        status: {}
   551  status:
   552    acceptedNames:
   553      kind: ""
   554      plural: ""
   555    conditions: []
   556    storedVersions: []