apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
  annotations:
    helm.sh/resource-policy: keep
  name: gkeclusterconfigs.gke.cattle.io
spec:
  group: gke.cattle.io
  names:
    kind: GKEClusterConfig
    plural: gkeclusterconfigs
    shortNames:
    - gkecc
    singular: gkeclusterconfig
  preserveUnknownFields: false
  scope: Namespaced
  versions:
  - name: v1
    schema:
      openAPIV3Schema:
        properties:
          spec:
            properties:
              clusterAddons:
                nullable: true
                properties:
                  horizontalPodAutoscaling:
                    type: boolean
                  httpLoadBalancing:
                    type: boolean
                  networkPolicyConfig:
                    type: boolean
                type: object
              clusterIpv4Cidr:
                nullable: true
                type: string
              clusterName:
                nullable: true
                type: string
              description:
                nullable: true
                type: string
              enableKubernetesAlpha:
                nullable: true
                type: boolean
              googleCredentialSecret:
                nullable: true
                type: string
              imported:
                type: boolean
              ipAllocationPolicy:
                nullable: true
                properties:
                  clusterIpv4CidrBlock:
                    nullable: true
                    type: string
                  clusterSecondaryRangeName:
                    nullable: true
                    type: string
                  createSubnetwork:
                    type: boolean
                  nodeIpv4CidrBlock:
                    nullable: true
                    type: string
                  servicesIpv4CidrBlock:
                    nullable: true
                    type: string
                  servicesSecondaryRangeName:
                    nullable: true
                    type: string
                  subnetworkName:
                    nullable: true
                    type: string
                  useIpAliases:
                    type: boolean
                type: object
              kubernetesVersion:
                nullable: true
                type: string
              labels:
                additionalProperties:
                  nullable: true
                  type: string
                nullable: true
                type: object
              locations:
                items:
                  nullable: true
                  type: string
                nullable: true
                type: array
              loggingService:
                nullable: true
                type: string
              maintenanceWindow:
                nullable: true
                type: string
              masterAuthorizedNetworks:
                nullable: true
                properties:
                  cidrBlocks:
                    items:
                      properties:
                        cidrBlock:
                          nullable: true
                          type: string
                        displayName:
                          nullable: true
                          type: string
                      type: object
                    nullable: true
                    type: array
                  enabled:
                    type: boolean
                type: object
              monitoringService:
                nullable: true
                type: string
              network:
                nullable: true
                type: string
              networkPolicyEnabled:
                nullable: true
                type: boolean
              nodePools:
                items:
                  properties:
                    autoscaling:
                      nullable: true
                      properties:
                        enabled:
                          type: boolean
                        maxNodeCount:
                          type: integer
                        minNodeCount:
                          type: integer
                      type: object
                    config:
                      nullable: true
                      properties:
                        diskSizeGb:
                          type: integer
                        diskType:
                          nullable: true
                          type: string
                        imageType:
                          nullable: true
                          type: string
                        labels:
                          additionalProperties:
                            nullable: true
                            type: string
                          nullable: true
                          type: object
                        localSsdCount:
                          type: integer
                        machineType:
                          nullable: true
                          type: string
                        oauthScopes:
                          items:
                            nullable: true
                            type: string
                          nullable: true
                          type: array
                        preemptible:
                          type: boolean
                        tags:
                          items:
                            nullable: true
                            type: string
                          nullable: true
                          type: array
                        taints:
                          items:
                            properties:
                              effect:
                                nullable: true
                                type: string
                              key:
                                nullable: true
                                type: string
                              value:
                                nullable: true
                                type: string
                            type: object
                          nullable: true
                          type: array
                      type: object
                    initialNodeCount:
                      nullable: true
                      type: integer
                    management:
                      nullable: true
                      properties:
                        autoRepair:
                          type: boolean
                        autoUpgrade:
                          type: boolean
                      type: object
                    maxPodsConstraint:
                      nullable: true
                      type: integer
                    name:
                      nullable: true
                      type: string
                    version:
                      nullable: true
                      type: string
                  type: object
                nullable: true
                type: array
              privateClusterConfig:
                nullable: true
                properties:
                  enablePrivateEndpoint:
                    type: boolean
                  enablePrivateNodes:
                    type: boolean
                  masterIpv4CidrBlock:
                    nullable: true
                    type: string
                type: object
              projectID:
                nullable: true
                type: string
              region:
                nullable: true
                type: string
              subnetwork:
                nullable: true
                type: string
              zone:
                nullable: true
                type: string
            type: object
          status:
            properties:
              failureMessage:
                nullable: true
                type: string
              phase:
                nullable: true
                type: string
            type: object
        type: object
    served: true
    storage: true
    subresources:
      status: {}
