apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
  annotations:
    cert-manager.io/inject-ca-from: azureserviceoperator-system/azureserviceoperator-serving-cert
    controller-gen.kubebuilder.io/version: (devel)
  name: managedclusters.containerservice.azure.com
spec:
  conversion:
    strategy: Webhook
    webhook:
      clientConfig:
        service:
          name: azureserviceoperator-webhook-service
          namespace: azureserviceoperator-system
          path: /convert
      conversionReviewVersions:
      - v1beta1
  group: containerservice.azure.com
  names:
    kind: ManagedCluster
    listKind: ManagedClusterList
    plural: managedclusters
    singular: managedcluster
  preserveUnknownFields: false
  scope: Namespaced
  versions:
  - additionalPrinterColumns:
    - jsonPath: .status.conditions[?(@.type=='Ready')].status
      name: Ready
      type: string
    - jsonPath: .status.conditions[?(@.type=='Ready')].severity
      name: Severity
      type: string
    - jsonPath: .status.conditions[?(@.type=='Ready')].reason
      name: Reason
      type: string
    - jsonPath: .status.conditions[?(@.type=='Ready')].message
      name: Message
      type: string
    name: v1alpha1api20210501
    schema:
      openAPIV3Schema:
        description: 'Generated from: https://schema.management.azure.com/schemas/2021-05-01/Microsoft.ContainerService.json#/resourceDefinitions/managedClusters'
        properties:
          apiVersion:
            description: 'APIVersion defines the versioned schema of this representation
              of an object. Servers should convert recognized schemas to the latest
              internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
            type: string
          kind:
            description: 'Kind is a string value representing the REST resource this
              object represents. Servers may infer this from the endpoint the client
              submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
            type: string
          metadata:
            type: object
          spec:
            properties:
              aadProfile:
                description: 'AadProfile: For more details see [managed AAD on AKS](https://docs.microsoft.com/azure/aks/managed-aad).'
                properties:
                  adminGroupObjectIDs:
                    description: 'AdminGroupObjectIDs: The list of AAD group object
                      IDs that will have admin role of the cluster.'
                    items:
                      type: string
                    type: array
                  clientAppID:
                    description: 'ClientAppID: The client AAD application ID.'
                    type: string
                  enableAzureRBAC:
                    description: 'EnableAzureRBAC: Whether to enable Azure RBAC for
                      Kubernetes authorization.'
                    type: boolean
                  managed:
                    description: 'Managed: Whether to enable managed AAD.'
                    type: boolean
                  serverAppID:
                    description: 'ServerAppID: The server AAD application ID.'
                    type: string
                  serverAppSecret:
                    description: 'ServerAppSecret: The server AAD application secret.'
                    type: string
                  tenantID:
                    description: 'TenantID: The AAD tenant ID to use for authentication.
                      If not specified, will use the tenant of the deployment subscription.'
                    type: string
                type: object
              addonProfiles:
                additionalProperties:
                  description: 'Generated from: https://schema.management.azure.com/schemas/2021-05-01/Microsoft.ContainerService.json#/definitions/ManagedClusterAddonProfile'
                  properties:
                    config:
                      additionalProperties:
                        type: string
                      description: 'Config: Key-value pairs for configuring an add-on.'
                      type: object
                    enabled:
                      description: 'Enabled: Whether the add-on is enabled or not.'
                      type: boolean
                  required:
                  - enabled
                  type: object
                description: 'AddonProfiles: The profile of managed cluster add-on.'
                type: object
              agentPoolProfiles:
                description: 'AgentPoolProfiles: The agent pool properties.'
                items:
                  description: 'Generated from: https://schema.management.azure.com/schemas/2021-05-01/Microsoft.ContainerService.json#/definitions/ManagedClusterAgentPoolProfile'
                  properties:
                    availabilityZones:
                      description: 'AvailabilityZones: The list of Availability zones
                        to use for nodes. This can only be specified if the AgentPoolType
                        property is ''VirtualMachineScaleSets''.'
                      items:
                        type: string
                      type: array
                    count:
                      description: 'Count: Number of agents (VMs) to host docker containers.
                        Allowed values must be in the range of 0 to 1000 (inclusive)
                        for user pools and in the range of 1 to 1000 (inclusive) for
                        system pools. The default value is 1.'
                      type: integer
                    enableAutoScaling:
                      description: 'EnableAutoScaling: Whether to enable auto-scaler'
                      type: boolean
                    enableEncryptionAtHost:
                      description: 'EnableEncryptionAtHost: This is only supported
                        on certain VM sizes and in certain Azure regions. For more
                        information, see: https://docs.microsoft.com/azure/aks/enable-host-encryption'
                      type: boolean
                    enableFIPS:
                      description: 'EnableFIPS: See [Add a FIPS-enabled node pool](https://docs.microsoft.com/azure/aks/use-multiple-node-pools#add-a-fips-enabled-node-pool-preview)
                        for more details.'
                      type: boolean
                    enableNodePublicIP:
                      description: 'EnableNodePublicIP: Some scenarios may require
                        nodes in a node pool to receive their own dedicated public
                        IP addresses. A common scenario is for gaming workloads, where
                        a console needs to make a direct connection to a cloud virtual
                        machine to minimize hops. For more information see [assigning
                        a public IP per node](https://docs.microsoft.com/azure/aks/use-multiple-node-pools#assign-a-public-ip-per-node-for-your-node-pools).
                        The default is false.'
                      type: boolean
                    enableUltraSSD:
                      description: 'EnableUltraSSD: Whether to enable UltraSSD'
                      type: boolean
                    gpuInstanceProfile:
                      description: 'GpuInstanceProfile: GPUInstanceProfile to be used
                        to specify GPU MIG instance profile for supported GPU VM SKU.'
                      enum:
                      - MIG1g
                      - MIG2g
                      - MIG3g
                      - MIG4g
                      - MIG7g
                      type: string
                    kubeletConfig:
                      description: 'KubeletConfig: See [AKS custom node configuration](https://docs.microsoft.com/azure/aks/custom-node-configuration)
                        for more details.'
                      properties:
                        allowedUnsafeSysctls:
                          description: 'AllowedUnsafeSysctls: Allowed list of unsafe
                            sysctls or unsafe sysctl patterns (ending in `*`).'
                          items:
                            type: string
                          type: array
                        containerLogMaxFiles:
                          description: 'ContainerLogMaxFiles: The maximum number of
                            container log files that can be present for a container.
                            The number must be ≥ 2.'
                          minimum: 2
                          type: integer
                        containerLogMaxSizeMB:
                          description: 'ContainerLogMaxSizeMB: The maximum size (e.g.
                            10Mi) of container log file before it is rotated.'
                          type: integer
                        cpuCfsQuota:
                          description: 'CpuCfsQuota: The default is true.'
                          type: boolean
                        cpuCfsQuotaPeriod:
                          description: 'CpuCfsQuotaPeriod: The default is ''100ms.''
                            Valid values are a sequence of decimal numbers with an
                            optional fraction and a unit suffix. For example: ''300ms'',
                            ''2h45m''. Supported units are ''ns'', ''us'', ''ms'',
                            ''s'', ''m'', and ''h''.'
                          type: string
                        cpuManagerPolicy:
                          description: 'CpuManagerPolicy: The default is ''none''.
                            See [Kubernetes CPU management policies](https://kubernetes.io/docs/tasks/administer-cluster/cpu-management-policies/#cpu-management-policies)
                            for more information. Allowed values are ''none'' and
                            ''static''.'
                          type: string
                        failSwapOn:
                          description: 'FailSwapOn: If set to true it will make the
                            Kubelet fail to start if swap is enabled on the node.'
                          type: boolean
                        imageGcHighThreshold:
                          description: 'ImageGcHighThreshold: To disable image garbage
                            collection, set to 100. The default is 85%'
                          type: integer
                        imageGcLowThreshold:
                          description: 'ImageGcLowThreshold: This cannot be set higher
                            than imageGcHighThreshold. The default is 80%'
                          type: integer
                        podMaxPids:
                          description: 'PodMaxPids: The maximum number of processes
                            per pod.'
                          type: integer
                        topologyManagerPolicy:
                          description: 'TopologyManagerPolicy: For more information
                            see [Kubernetes Topology Manager](https://kubernetes.io/docs/tasks/administer-cluster/topology-manager).
                            The default is ''none''. Allowed values are ''none'',
                            ''best-effort'', ''restricted'', and ''single-numa-node''.'
                          type: string
                      type: object
                    kubeletDiskType:
                      enum:
                      - OS
                      - Temporary
                      type: string
                    linuxOSConfig:
                      description: 'LinuxOSConfig: See [AKS custom node configuration](https://docs.microsoft.com/azure/aks/custom-node-configuration)
                        for more details.'
                      properties:
                        swapFileSizeMB:
                          description: 'SwapFileSizeMB: The size in MB of a swap file
                            that will be created on each node.'
                          type: integer
                        sysctls:
                          description: 'Sysctls: Sysctl settings for Linux agent nodes.'
                          properties:
                            fsAioMaxNr:
                              description: 'FsAioMaxNr: Sysctl setting fs.aio-max-nr.'
                              type: integer
                            fsFileMax:
                              description: 'FsFileMax: Sysctl setting fs.file-max.'
                              type: integer
                            fsInotifyMaxUserWatches:
                              description: 'FsInotifyMaxUserWatches: Sysctl setting
                                fs.inotify.max_user_watches.'
                              type: integer
                            fsNrOpen:
                              description: 'FsNrOpen: Sysctl setting fs.nr_open.'
                              type: integer
                            kernelThreadsMax:
                              description: 'KernelThreadsMax: Sysctl setting kernel.threads-max.'
                              type: integer
                            netCoreNetdevMaxBacklog:
                              description: 'NetCoreNetdevMaxBacklog: Sysctl setting
                                net.core.netdev_max_backlog.'
                              type: integer
                            netCoreOptmemMax:
                              description: 'NetCoreOptmemMax: Sysctl setting net.core.optmem_max.'
                              type: integer
                            netCoreRmemDefault:
                              description: 'NetCoreRmemDefault: Sysctl setting net.core.rmem_default.'
                              type: integer
                            netCoreRmemMax:
                              description: 'NetCoreRmemMax: Sysctl setting net.core.rmem_max.'
                              type: integer
                            netCoreSomaxconn:
                              description: 'NetCoreSomaxconn: Sysctl setting net.core.somaxconn.'
                              type: integer
                            netCoreWmemDefault:
                              description: 'NetCoreWmemDefault: Sysctl setting net.core.wmem_default.'
                              type: integer
                            netCoreWmemMax:
                              description: 'NetCoreWmemMax: Sysctl setting net.core.wmem_max.'
                              type: integer
                            netIpv4IpLocalPortRange:
                              description: 'NetIpv4IpLocalPortRange: Sysctl setting
                                net.ipv4.ip_local_port_range.'
                              type: string
                            netIpv4NeighDefaultGcThresh1:
                              description: 'NetIpv4NeighDefaultGcThresh1: Sysctl setting
                                net.ipv4.neigh.default.gc_thresh1.'
                              type: integer
                            netIpv4NeighDefaultGcThresh2:
                              description: 'NetIpv4NeighDefaultGcThresh2: Sysctl setting
                                net.ipv4.neigh.default.gc_thresh2.'
                              type: integer
                            netIpv4NeighDefaultGcThresh3:
                              description: 'NetIpv4NeighDefaultGcThresh3: Sysctl setting
                                net.ipv4.neigh.default.gc_thresh3.'
                              type: integer
                            netIpv4TcpFinTimeout:
                              description: 'NetIpv4TcpFinTimeout: Sysctl setting net.ipv4.tcp_fin_timeout.'
                              type: integer
                            netIpv4TcpKeepaliveProbes:
                              description: 'NetIpv4TcpKeepaliveProbes: Sysctl setting
                                net.ipv4.tcp_keepalive_probes.'
                              type: integer
                            netIpv4TcpKeepaliveTime:
                              description: 'NetIpv4TcpKeepaliveTime: Sysctl setting
                                net.ipv4.tcp_keepalive_time.'
                              type: integer
                            netIpv4TcpMaxSynBacklog:
                              description: 'NetIpv4TcpMaxSynBacklog: Sysctl setting
                                net.ipv4.tcp_max_syn_backlog.'
                              type: integer
                            netIpv4TcpMaxTwBuckets:
                              description: 'NetIpv4TcpMaxTwBuckets: Sysctl setting
                                net.ipv4.tcp_max_tw_buckets.'
                              type: integer
                            netIpv4TcpTwReuse:
                              description: 'NetIpv4TcpTwReuse: Sysctl setting net.ipv4.tcp_tw_reuse.'
                              type: boolean
                            netIpv4TcpkeepaliveIntvl:
                              description: 'NetIpv4TcpkeepaliveIntvl: Sysctl setting
                                net.ipv4.tcp_keepalive_intvl.'
                              type: integer
                            netNetfilterNfConntrackBuckets:
                              description: 'NetNetfilterNfConntrackBuckets: Sysctl
                                setting net.netfilter.nf_conntrack_buckets.'
                              type: integer
                            netNetfilterNfConntrackMax:
                              description: 'NetNetfilterNfConntrackMax: Sysctl setting
                                net.netfilter.nf_conntrack_max.'
                              type: integer
                            vmMaxMapCount:
                              description: 'VmMaxMapCount: Sysctl setting vm.max_map_count.'
                              type: integer
                            vmSwappiness:
                              description: 'VmSwappiness: Sysctl setting vm.swappiness.'
                              type: integer
                            vmVfsCachePressure:
                              description: 'VmVfsCachePressure: Sysctl setting vm.vfs_cache_pressure.'
                              type: integer
                          type: object
                        transparentHugePageDefrag:
                          description: 'TransparentHugePageDefrag: Valid values are
                            ''always'', ''defer'', ''defer+madvise'', ''madvise''
                            and ''never''. The default is ''madvise''. For more information
                            see [Transparent Hugepages](https://www.kernel.org/doc/html/latest/admin-guide/mm/transhuge.html#admin-guide-transhuge).'
                          type: string
                        transparentHugePageEnabled:
                          description: 'TransparentHugePageEnabled: Valid values are
                            ''always'', ''madvise'', and ''never''. The default is
                            ''always''. For more information see [Transparent Hugepages](https://www.kernel.org/doc/html/latest/admin-guide/mm/transhuge.html#admin-guide-transhuge).'
                          type: string
                      type: object
                    maxCount:
                      description: 'MaxCount: The maximum number of nodes for auto-scaling'
                      type: integer
                    maxPods:
                      description: 'MaxPods: The maximum number of pods that can run
                        on a node.'
                      type: integer
                    minCount:
                      description: 'MinCount: The minimum number of nodes for auto-scaling'
                      type: integer
                    mode:
                      enum:
                      - System
                      - User
                      type: string
                    name:
                      description: 'Name: Windows agent pool names must be 6 characters
                        or less.'
                      pattern: ^[a-z][a-z0-9]{0,11}$
                      type: string
                    nodeLabels:
                      additionalProperties:
                        type: string
                      description: 'NodeLabels: The node labels to be persisted across
                        all nodes in agent pool.'
                      type: object
                    nodePublicIPPrefixIDReference:
                      description: 'NodePublicIPPrefixIDReference: This is of the
                        form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIPPrefixName}'
                      properties:
                        armId:
                          description: 'TODO: The below regex may be overly restrictive
                            ARMID is a string of the form /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}.
                            The /resourcegroups/{resourceGroupName} bit is optional
                            as some resources are scoped at the subscription level
                            ARMID is mutually exclusive with Group, Kind, Namespace
                            and Name.'
                          pattern: (?i)^/subscriptions/([^/]+)(/resourcegroups/([^/]+))?/providers/([^/]+)/([^/]+/[^/]+)(/([^/]+/[^/]+))*$
                          type: string
                        group:
                          description: Group is the Kubernetes group of the resource.
                          type: string
                        kind:
                          description: Kind is the Kubernetes kind of the resource.
                          type: string
                        name:
                          description: Name is the Kubernetes name of the resource.
                          type: string
                      type: object
                    nodeTaints:
                      description: 'NodeTaints: The taints added to new nodes during
                        node pool create and scale. For example, key=value:NoSchedule.'
                      items:
                        type: string
                      type: array
                    orchestratorVersion:
                      description: 'OrchestratorVersion: As a best practice, you should
                        upgrade all node pools in an AKS cluster to the same Kubernetes
                        version. The node pool version must have the same major version
                        as the control plane. The node pool minor version must be
                        within two minor versions of the control plane version. The
                        node pool version cannot be greater than the control plane
                        version. For more information see [upgrading a node pool](https://docs.microsoft.com/azure/aks/use-multiple-node-pools#upgrade-a-node-pool).'
                      type: string
                    osDiskSizeGB:
                      description: 'OsDiskSizeGB: OS Disk Size in GB to be used to
                        specify the disk size for every machine in the master/agent
                        pool. If you specify 0, it will apply the default osDisk size
                        according to the vmSize specified.'
                      maximum: 2048
                      minimum: 0
                      type: integer
                    osDiskType:
                      enum:
                      - Ephemeral
                      - Managed
                      type: string
                    osSKU:
                      enum:
                      - CBLMariner
                      - Ubuntu
                      type: string
                    osType:
                      enum:
                      - Linux
                      - Windows
                      type: string
                    podSubnetIDReference:
                      description: 'PodSubnetIDReference: If omitted, pod IPs are
                        statically assigned on the node subnet (see vnetSubnetID for
                        more details). This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}'
                      properties:
                        armId:
                          description: 'TODO: The below regex may be overly restrictive
                            ARMID is a string of the form /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}.
                            The /resourcegroups/{resourceGroupName} bit is optional
                            as some resources are scoped at the subscription level
                            ARMID is mutually exclusive with Group, Kind, Namespace
                            and Name.'
                          pattern: (?i)^/subscriptions/([^/]+)(/resourcegroups/([^/]+))?/providers/([^/]+)/([^/]+/[^/]+)(/([^/]+/[^/]+))*$
                          type: string
                        group:
                          description: Group is the Kubernetes group of the resource.
                          type: string
                        kind:
                          description: Kind is the Kubernetes kind of the resource.
                          type: string
                        name:
                          description: Name is the Kubernetes name of the resource.
                          type: string
                      type: object
                    proximityPlacementGroupID:
                      description: 'ProximityPlacementGroupID: The ID for Proximity
                        Placement Group.'
                      type: string
                    scaleSetEvictionPolicy:
                      description: 'ScaleSetEvictionPolicy: This cannot be specified
                        unless the scaleSetPriority is ''Spot''. If not specified,
                        the default is ''Delete''.'
                      enum:
                      - Deallocate
                      - Delete
                      type: string
                    scaleSetPriority:
                      description: 'ScaleSetPriority: The Virtual Machine Scale Set
                        priority. If not specified, the default is ''Regular''.'
                      enum:
                      - Regular
                      - Spot
                      type: string
                    spotMaxPrice:
                      description: 'SpotMaxPrice: Possible values are any decimal
                        value greater than zero or -1 which indicates the willingness
                        to pay any on-demand price. For more details on spot pricing,
                        see [spot VMs pricing](https://docs.microsoft.com/azure/virtual-machines/spot-vms#pricing)'
                      type: number
                    tags:
                      additionalProperties:
                        type: string
                      description: 'Tags: The tags to be persisted on the agent pool
                        virtual machine scale set.'
                      type: object
                    type:
                      enum:
                      - AvailabilitySet
                      - VirtualMachineScaleSets
                      type: string
                    upgradeSettings:
                      description: 'UpgradeSettings: Settings for upgrading an agentpool'
                      properties:
                        maxSurge:
                          description: 'MaxSurge: This can either be set to an integer
                            (e.g. ''5'') or a percentage (e.g. ''50%''). If a percentage
                            is specified, it is the percentage of the total agent
                            pool size at the time of the upgrade. For percentages,
                            fractional nodes are rounded up. If not specified, the
                            default is 1. For more information, including best practices,
                            see: https://docs.microsoft.com/azure/aks/upgrade-cluster#customize-node-surge-upgrade'
                          type: string
                      type: object
                    vmSize:
                      description: 'VmSize: VM size availability varies by region.
                        If a node contains insufficient compute resources (memory,
                        cpu, etc) pods might fail to run correctly. For more details
                        on restricted VM sizes, see: https://docs.microsoft.com/azure/aks/quotas-skus-regions'
                      type: string
                    vnetSubnetIDReference:
                      description: 'VnetSubnetIDReference: If this is not specified,
                        a VNET and subnet will be generated and used. If no podSubnetID
                        is specified, this applies to nodes and pods, otherwise it
                        applies to just nodes. This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}'
                      properties:
                        armId:
                          description: 'TODO: The below regex may be overly restrictive
                            ARMID is a string of the form /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}.
                            The /resourcegroups/{resourceGroupName} bit is optional
                            as some resources are scoped at the subscription level
                            ARMID is mutually exclusive with Group, Kind, Namespace
                            and Name.'
                          pattern: (?i)^/subscriptions/([^/]+)(/resourcegroups/([^/]+))?/providers/([^/]+)/([^/]+/[^/]+)(/([^/]+/[^/]+))*$
                          type: string
                        group:
                          description: Group is the Kubernetes group of the resource.
                          type: string
                        kind:
                          description: Kind is the Kubernetes kind of the resource.
                          type: string
                        name:
                          description: Name is the Kubernetes name of the resource.
                          type: string
                      type: object
                  required:
                  - name
                  type: object
                type: array
              apiServerAccessProfile:
                description: 'ApiServerAccessProfile: Access profile for managed cluster
                  API server.'
                properties:
                  authorizedIPRanges:
                    description: 'AuthorizedIPRanges: IP ranges are specified in CIDR
                      format, e.g. 137.117.106.88/29. This feature is not compatible
                      with clusters that use Public IP Per Node, or clusters that
                      are using a Basic Load Balancer. For more information see [API
                      server authorized IP ranges](https://docs.microsoft.com/azure/aks/api-server-authorized-ip-ranges).'
                    items:
                      type: string
                    type: array
                  enablePrivateCluster:
                    description: 'EnablePrivateCluster: For more details, see [Creating
                      a private AKS cluster](https://docs.microsoft.com/azure/aks/private-clusters).'
                    type: boolean
                  enablePrivateClusterPublicFQDN:
                    description: 'EnablePrivateClusterPublicFQDN: Whether to create
                      additional public FQDN for private cluster or not.'
                    type: boolean
                  privateDNSZone:
                    description: 'PrivateDNSZone: The default is System. For more
                      details see [configure private DNS zone](https://docs.microsoft.com/azure/aks/private-clusters#configure-private-dns-zone).
                      Allowed values are ''system'' and ''none''.'
                    type: string
                type: object
              autoScalerProfile:
                description: 'AutoScalerProfile: Parameters to be applied to the cluster-autoscaler
                  when enabled'
                properties:
                  balance-similar-node-groups:
                    description: 'BalanceSimilarNodeGroups: Valid values are ''true''
                      and ''false'''
                    type: string
                  expander:
                    description: 'Expander: If not specified, the default is ''random''.
                      See [expanders](https://github.com/kubernetes/autoscaler/blob/master/cluster-autoscaler/FAQ.md#what-are-expanders)
                      for more information.'
                    enum:
                    - least-waste
                    - most-pods
                    - priority
                    - random
                    type: string
                  max-empty-bulk-delete:
                    description: 'MaxEmptyBulkDelete: The default is 10.'
                    type: string
                  max-graceful-termination-sec:
                    description: 'MaxGracefulTerminationSec: The default is 600.'
                    type: string
                  max-node-provision-time:
                    description: 'MaxNodeProvisionTime: The default is ''15m''. Values
                      must be an integer followed by an ''m''. No unit of time other
                      than minutes (m) is supported.'
                    type: string
                  max-total-unready-percentage:
                    description: 'MaxTotalUnreadyPercentage: The default is 45. The
                      maximum is 100 and the minimum is 0.'
                    type: string
                  new-pod-scale-up-delay:
                    description: 'NewPodScaleUpDelay: For scenarios like burst/batch
                      scale where you don''t want CA to act before the kubernetes
                      scheduler could schedule all the pods, you can tell CA to ignore
                      unscheduled pods before they''re a certain age. The default
                      is ''0s''. Values must be an integer followed by a unit (''s''
                      for seconds, ''m'' for minutes, ''h'' for hours, etc).'
                    type: string
                  ok-total-unready-count:
                    description: 'OkTotalUnreadyCount: This must be an integer. The
                      default is 3.'
                    type: string
                  scale-down-delay-after-add:
                    description: 'ScaleDownDelayAfterAdd: The default is ''10m''.
                      Values must be an integer followed by an ''m''. No unit of time
                      other than minutes (m) is supported.'
                    type: string
                  scale-down-delay-after-delete:
                    description: 'ScaleDownDelayAfterDelete: The default is the scan-interval.
                      Values must be an integer followed by an ''m''. No unit of time
                      other than minutes (m) is supported.'
                    type: string
                  scale-down-delay-after-failure:
                    description: 'ScaleDownDelayAfterFailure: The default is ''3m''.
                      Values must be an integer followed by an ''m''. No unit of time
                      other than minutes (m) is supported.'
                    type: string
                  scale-down-unneeded-time:
                    description: 'ScaleDownUnneededTime: The default is ''10m''. Values
                      must be an integer followed by an ''m''. No unit of time other
                      than minutes (m) is supported.'
                    type: string
                  scale-down-unready-time:
                    description: 'ScaleDownUnreadyTime: The default is ''20m''. Values
                      must be an integer followed by an ''m''. No unit of time other
                      than minutes (m) is supported.'
                    type: string
                  scale-down-utilization-threshold:
                    description: 'ScaleDownUtilizationThreshold: The default is ''0.5''.'
                    type: string
                  scan-interval:
                    description: 'ScanInterval: The default is ''10''. Values must
                      be an integer number of seconds.'
                    type: string
                  skip-nodes-with-local-storage:
                    description: 'SkipNodesWithLocalStorage: The default is true.'
                    type: string
                  skip-nodes-with-system-pods:
                    description: 'SkipNodesWithSystemPods: The default is true.'
                    type: string
                type: object
              autoUpgradeProfile:
                description: 'AutoUpgradeProfile: Auto upgrade profile for a managed
                  cluster.'
                properties:
                  upgradeChannel:
                    description: 'UpgradeChannel: For more information see [setting
                      the AKS cluster auto-upgrade channel](https://docs.microsoft.com/azure/aks/upgrade-cluster#set-auto-upgrade-channel).'
                    enum:
                    - node-image
                    - none
                    - patch
                    - rapid
                    - stable
                    type: string
                type: object
              azureName:
                description: 'AzureName: The name of the resource in Azure. This is
                  often the same as the name of the resource in Kubernetes but it
                  doesn''t have to be.'
                maxLength: 63
                minLength: 1
                pattern: ^[a-zA-Z0-9]$|^[a-zA-Z0-9][-_a-zA-Z0-9]{0,61}[a-zA-Z0-9]$
                type: string
              disableLocalAccounts:
                description: 'DisableLocalAccounts: If set to true, getting static
                  credentials will be disabled for this cluster. This must only be
                  used on Managed Clusters that are AAD enabled. For more details
                  see [disable local accounts](https://docs.microsoft.com/azure/aks/managed-aad#disable-local-accounts-preview).'
                type: boolean
              diskEncryptionSetIDReference:
                description: 'DiskEncryptionSetIDReference: This is of the form: ''/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskEncryptionSets/{encryptionSetName}'''
                properties:
                  armId:
                    description: 'TODO: The below regex may be overly restrictive
                      ARMID is a string of the form /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}.
                      The /resourcegroups/{resourceGroupName} bit is optional as some
                      resources are scoped at the subscription level ARMID is mutually
                      exclusive with Group, Kind, Namespace and Name.'
                    pattern: (?i)^/subscriptions/([^/]+)(/resourcegroups/([^/]+))?/providers/([^/]+)/([^/]+/[^/]+)(/([^/]+/[^/]+))*$
                    type: string
                  group:
                    description: Group is the Kubernetes group of the resource.
                    type: string
                  kind:
                    description: Kind is the Kubernetes kind of the resource.
                    type: string
                  name:
                    description: Name is the Kubernetes name of the resource.
                    type: string
                type: object
              dnsPrefix:
                description: 'DnsPrefix: This cannot be updated once the Managed Cluster
                  has been created.'
                type: string
              enablePodSecurityPolicy:
                description: 'EnablePodSecurityPolicy: (DEPRECATING) Whether to enable
                  Kubernetes pod security policy (preview). This feature is set for
                  removal on October 15th, 2020. Learn more at aka.ms/aks/azpodpolicy.'
                type: boolean
              enableRBAC:
                description: 'EnableRBAC: Whether to enable Kubernetes Role-Based
                  Access Control.'
                type: boolean
              extendedLocation:
                description: 'ExtendedLocation: The complex type of the extended location.'
                properties:
                  name:
                    description: 'Name: The name of the extended location.'
                    type: string
                  type:
                    description: 'Type: The type of the extended location.'
                    enum:
                    - EdgeZone
                    type: string
                type: object
              fqdnSubdomain:
                description: 'FqdnSubdomain: This cannot be updated once the Managed
                  Cluster has been created.'
                type: string
              httpProxyConfig:
                description: 'HttpProxyConfig: Cluster HTTP proxy configuration.'
                properties:
                  httpProxy:
                    description: 'HttpProxy: The HTTP proxy server endpoint to use.'
                    type: string
                  httpsProxy:
                    description: 'HttpsProxy: The HTTPS proxy server endpoint to use.'
                    type: string
                  noProxy:
                    description: 'NoProxy: The endpoints that should not go through
                      proxy.'
                    items:
                      type: string
                    type: array
                  trustedCa:
                    description: 'TrustedCa: Alternative CA cert to use for connecting
                      to proxy servers.'
                    type: string
                type: object
              identity:
                description: 'Identity: Identity for the managed cluster.'
                properties:
                  type:
                    description: 'Type: For more information see [use managed identities
                      in AKS](https://docs.microsoft.com/azure/aks/use-managed-identity).'
                    enum:
                    - None
                    - SystemAssigned
                    - UserAssigned
                    type: string
                  userAssignedIdentities:
                    additionalProperties:
                      x-kubernetes-preserve-unknown-fields: true
                    description: 'UserAssignedIdentities: The keys must be ARM resource
                      IDs in the form: ''/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}''.'
                    type: object
                type: object
              identityProfile:
                additionalProperties:
                  description: 'Generated from: https://schema.management.azure.com/schemas/2021-05-01/Microsoft.ContainerService.json#/definitions/Componentsqit0etschemasmanagedclusterpropertiespropertiesidentityprofileadditionalproperties'
                  properties:
                    clientId:
                      description: 'ClientId: The client ID of the user assigned identity.'
                      type: string
                    objectId:
                      description: 'ObjectId: The object ID of the user assigned identity.'
                      type: string
                    resourceReference:
                      description: 'ResourceReference: The resource ID of the user
                        assigned identity.'
                      properties:
                        armId:
                          description: 'TODO: The below regex may be overly restrictive
                            ARMID is a string of the form /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}.
                            The /resourcegroups/{resourceGroupName} bit is optional
                            as some resources are scoped at the subscription level
                            ARMID is mutually exclusive with Group, Kind, Namespace
                            and Name.'
                          pattern: (?i)^/subscriptions/([^/]+)(/resourcegroups/([^/]+))?/providers/([^/]+)/([^/]+/[^/]+)(/([^/]+/[^/]+))*$
                          type: string
                        group:
                          description: Group is the Kubernetes group of the resource.
                          type: string
                        kind:
                          description: Kind is the Kubernetes kind of the resource.
                          type: string
                        name:
                          description: Name is the Kubernetes name of the resource.
                          type: string
                      type: object
                  type: object
                description: 'IdentityProfile: Identities associated with the cluster.'
                type: object
              kubernetesVersion:
                description: 'KubernetesVersion: When you upgrade a supported AKS
                  cluster, Kubernetes minor versions cannot be skipped. All upgrades
                  must be performed sequentially by major version number. For example,
                  upgrades between 1.14.x -> 1.15.x or 1.15.x -> 1.16.x are allowed,
                  however 1.14.x -> 1.16.x is not allowed. See [upgrading an AKS cluster](https://docs.microsoft.com/azure/aks/upgrade-cluster)
                  for more details.'
                type: string
              linuxProfile:
                description: 'LinuxProfile: Profile for Linux VMs in the container
                  service cluster.'
                properties:
                  adminUsername:
                    description: 'AdminUsername: The administrator username to use
                      for Linux VMs.'
                    pattern: ^[A-Za-z][-A-Za-z0-9_]*$
                    type: string
                  ssh:
                    description: 'Ssh: SSH configuration for Linux-based VMs running
                      on Azure.'
                    properties:
                      publicKeys:
                        description: 'PublicKeys: The list of SSH public keys used
                          to authenticate with Linux-based VMs. A maximum of 1 key
                          may be specified.'
                        items:
                          description: 'Generated from: https://schema.management.azure.com/schemas/2021-05-01/Microsoft.ContainerService.json#/definitions/ContainerServiceSshPublicKey'
                          properties:
                            keyData:
                              description: 'KeyData: Certificate public key used to
                                authenticate with VMs through SSH. The certificate
                                must be in PEM format with or without headers.'
                              type: string
                          required:
                          - keyData
                          type: object
                        type: array
                    required:
                    - publicKeys
                    type: object
                required:
                - adminUsername
                - ssh
                type: object
              location:
                description: 'Location: Location to deploy resource to'
                type: string
              networkProfile:
                description: 'NetworkProfile: Profile of network configuration.'
                properties:
                  dnsServiceIP:
                    description: 'DnsServiceIP: An IP address assigned to the Kubernetes
                      DNS service. It must be within the Kubernetes service address
                      range specified in serviceCidr.'
                    pattern: ^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$
                    type: string
                  dockerBridgeCidr:
                    description: 'DockerBridgeCidr: A CIDR notation IP range assigned
                      to the Docker bridge network. It must not overlap with any Subnet
                      IP ranges or the Kubernetes service address range.'
                    pattern: ^([0-9]{1,3}\.){3}[0-9]{1,3}(\/([0-9]|[1-2][0-9]|3[0-2]))?$
                    type: string
                  loadBalancerProfile:
                    description: 'LoadBalancerProfile: Profile of the managed cluster
                      load balancer.'
                    properties:
                      allocatedOutboundPorts:
                        description: 'AllocatedOutboundPorts: The desired number of
                          allocated SNAT ports per VM. Allowed values are in the range
                          of 0 to 64000 (inclusive). The default value is 0 which
                          results in Azure dynamically allocating ports.'
                        maximum: 64000
                        minimum: 0
                        type: integer
                      effectiveOutboundIPs:
                        description: 'EffectiveOutboundIPs: The effective outbound
                          IP resources of the cluster load balancer.'
                        items:
                          description: 'Generated from: https://schema.management.azure.com/schemas/2021-05-01/Microsoft.ContainerService.json#/definitions/ResourceReference'
                          properties:
                            reference:
                              description: 'Reference: The fully qualified Azure resource
                                id.'
                              properties:
                                armId:
                                  description: 'TODO: The below regex may be overly
                                    restrictive ARMID is a string of the form /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}.
                                    The /resourcegroups/{resourceGroupName} bit is
                                    optional as some resources are scoped at the subscription
                                    level ARMID is mutually exclusive with Group,
                                    Kind, Namespace and Name.'
                                  pattern: (?i)^/subscriptions/([^/]+)(/resourcegroups/([^/]+))?/providers/([^/]+)/([^/]+/[^/]+)(/([^/]+/[^/]+))*$
                                  type: string
                                group:
                                  description: Group is the Kubernetes group of the
                                    resource.
                                  type: string
                                kind:
                                  description: Kind is the Kubernetes kind of the
                                    resource.
                                  type: string
                                name:
                                  description: Name is the Kubernetes name of the
                                    resource.
                                  type: string
                              type: object
                          type: object
                        type: array
                      idleTimeoutInMinutes:
                        description: 'IdleTimeoutInMinutes: Desired outbound flow
                          idle timeout in minutes. Allowed values are in the range
                          of 4 to 120 (inclusive). The default value is 30 minutes.'
                        maximum: 120
                        minimum: 4
                        type: integer
                      managedOutboundIPs:
                        description: 'ManagedOutboundIPs: Desired managed outbound
                          IPs for the cluster load balancer.'
                        properties:
                          count:
                            description: 'Count: The desired number of outbound IPs
                              created/managed by Azure for the cluster load balancer.
                              Allowed values must be in the range of 1 to 100 (inclusive).
                              The default value is 1.'
                            maximum: 100
                            minimum: 1
                            type: integer
                        type: object
                      outboundIPPrefixes:
                        description: 'OutboundIPPrefixes: Desired outbound IP Prefix
                          resources for the cluster load balancer.'
                        properties:
                          publicIPPrefixes:
                            description: 'PublicIPPrefixes: A list of public IP prefix
                              resources.'
                            items:
                              description: 'Generated from: https://schema.management.azure.com/schemas/2021-05-01/Microsoft.ContainerService.json#/definitions/ResourceReference'
                              properties:
                                reference:
                                  description: 'Reference: The fully qualified Azure
                                    resource id.'
                                  properties:
                                    armId:
                                      description: 'TODO: The below regex may be overly
                                        restrictive ARMID is a string of the form
                                        /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}.
                                        The /resourcegroups/{resourceGroupName} bit
                                        is optional as some resources are scoped at
                                        the subscription level ARMID is mutually exclusive
                                        with Group, Kind, Namespace and Name.'
                                      pattern: (?i)^/subscriptions/([^/]+)(/resourcegroups/([^/]+))?/providers/([^/]+)/([^/]+/[^/]+)(/([^/]+/[^/]+))*$
                                      type: string
                                    group:
                                      description: Group is the Kubernetes group of
                                        the resource.
                                      type: string
                                    kind:
                                      description: Kind is the Kubernetes kind of
                                        the resource.
                                      type: string
                                    name:
                                      description: Name is the Kubernetes name of
                                        the resource.
                                      type: string
                                  type: object
                              type: object
                            type: array
                        type: object
                      outboundIPs:
                        description: 'OutboundIPs: Desired outbound IP resources for
                          the cluster load balancer.'
                        properties:
                          publicIPs:
                            description: 'PublicIPs: A list of public IP resources.'
                            items:
                              description: 'Generated from: https://schema.management.azure.com/schemas/2021-05-01/Microsoft.ContainerService.json#/definitions/ResourceReference'
                              properties:
                                reference:
                                  description: 'Reference: The fully qualified Azure
                                    resource id.'
                                  properties:
                                    armId:
                                      description: 'TODO: The below regex may be overly
                                        restrictive ARMID is a string of the form
                                        /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}.
                                        The /resourcegroups/{resourceGroupName} bit
                                        is optional as some resources are scoped at
                                        the subscription level ARMID is mutually exclusive
                                        with Group, Kind, Namespace and Name.'
                                      pattern: (?i)^/subscriptions/([^/]+)(/resourcegroups/([^/]+))?/providers/([^/]+)/([^/]+/[^/]+)(/([^/]+/[^/]+))*$
                                      type: string
                                    group:
                                      description: Group is the Kubernetes group of
                                        the resource.
                                      type: string
                                    kind:
                                      description: Kind is the Kubernetes kind of
                                        the resource.
                                      type: string
                                    name:
                                      description: Name is the Kubernetes name of
                                        the resource.
                                      type: string
                                  type: object
                              type: object
                            type: array
                        type: object
                    type: object
                  loadBalancerSku:
                    description: 'LoadBalancerSku: The default is ''standard''. See
                      [Azure Load Balancer SKUs](https://docs.microsoft.com/azure/load-balancer/skus)
                      for more information about the differences between load balancer
                      SKUs.'
                    enum:
                    - basic
                    - standard
                    type: string
                  networkMode:
                    description: 'NetworkMode: This cannot be specified if networkPlugin
                      is anything other than ''azure''.'
                    enum:
                    - bridge
                    - transparent
                    type: string
                  networkPlugin:
                    description: 'NetworkPlugin: Network plugin used for building
                      the Kubernetes network.'
                    enum:
                    - azure
                    - kubenet
                    type: string
                  networkPolicy:
                    description: 'NetworkPolicy: Network policy used for building
                      the Kubernetes network.'
                    enum:
                    - azure
                    - calico
                    type: string
                  outboundType:
                    description: 'OutboundType: This can only be set at cluster creation
                      time and cannot be changed later. For more information see [egress
                      outbound type](https://docs.microsoft.com/azure/aks/egress-outboundtype).'
                    enum:
                    - loadBalancer
                    - userDefinedRouting
                    type: string
                  podCidr:
                    description: 'PodCidr: A CIDR notation IP range from which to
                      assign pod IPs when kubenet is used.'
                    pattern: ^([0-9]{1,3}\.){3}[0-9]{1,3}(\/([0-9]|[1-2][0-9]|3[0-2]))?$
                    type: string
                  serviceCidr:
                    description: 'ServiceCidr: A CIDR notation IP range from which
                      to assign service cluster IPs. It must not overlap with any
                      Subnet IP ranges.'
                    pattern: ^([0-9]{1,3}\.){3}[0-9]{1,3}(\/([0-9]|[1-2][0-9]|3[0-2]))?$
                    type: string
                type: object
              nodeResourceGroup:
                description: 'NodeResourceGroup: The name of the resource group containing
                  agent pool nodes.'
                type: string
              owner:
                description: KnownResourceReference is a resource reference to a known
                  type.
                properties:
                  name:
                    description: This is the name of the Kubernetes resource to reference.
                    type: string
                required:
                - name
                type: object
              podIdentityProfile:
                description: 'PodIdentityProfile: See [use AAD pod identity](https://docs.microsoft.com/azure/aks/use-azure-ad-pod-identity)
                  for more details on pod identity integration.'
                properties:
                  allowNetworkPluginKubenet:
                    description: 'AllowNetworkPluginKubenet: Running in Kubenet is
                      disabled by default due to the security related nature of AAD
                      Pod Identity and the risks of IP spoofing. See [using Kubenet
                      network plugin with AAD Pod Identity](https://docs.microsoft.com/azure/aks/use-azure-ad-pod-identity#using-kubenet-network-plugin-with-azure-active-directory-pod-managed-identities)
                      for more information.'
                    type: boolean
                  enabled:
                    description: 'Enabled: Whether the pod identity addon is enabled.'
                    type: boolean
                  userAssignedIdentities:
                    description: 'UserAssignedIdentities: The pod identities to use
                      in the cluster.'
                    items:
                      description: 'Generated from: https://schema.management.azure.com/schemas/2021-05-01/Microsoft.ContainerService.json#/definitions/ManagedClusterPodIdentity'
                      properties:
                        bindingSelector:
                          description: 'BindingSelector: The binding selector to use
                            for the AzureIdentityBinding resource.'
                          type: string
                        identity:
                          description: 'Identity: Details about a user assigned identity.'
                          properties:
                            clientId:
                              description: 'ClientId: The client ID of the user assigned
                                identity.'
                              type: string
                            objectId:
                              description: 'ObjectId: The object ID of the user assigned
                                identity.'
                              type: string
                            resourceReference:
                              description: 'ResourceReference: The resource ID of
                                the user assigned identity.'
                              properties:
                                armId:
                                  description: 'TODO: The below regex may be overly
                                    restrictive ARMID is a string of the form /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}.
                                    The /resourcegroups/{resourceGroupName} bit is
                                    optional as some resources are scoped at the subscription
                                    level ARMID is mutually exclusive with Group,
                                    Kind, Namespace and Name.'
                                  pattern: (?i)^/subscriptions/([^/]+)(/resourcegroups/([^/]+))?/providers/([^/]+)/([^/]+/[^/]+)(/([^/]+/[^/]+))*$
                                  type: string
                                group:
                                  description: Group is the Kubernetes group of the
                                    resource.
                                  type: string
                                kind:
                                  description: Kind is the Kubernetes kind of the
                                    resource.
                                  type: string
                                name:
                                  description: Name is the Kubernetes name of the
                                    resource.
                                  type: string
                              type: object
                          type: object
                        name:
                          description: 'Name: The name of the pod identity.'
                          type: string
                        namespace:
                          description: 'Namespace: The namespace of the pod identity.'
                          type: string
                      required:
                      - identity
                      - name
                      - namespace
                      type: object
                    type: array
                  userAssignedIdentityExceptions:
                    description: 'UserAssignedIdentityExceptions: The pod identity
                      exceptions to allow.'
                    items:
                      description: 'Generated from: https://schema.management.azure.com/schemas/2021-05-01/Microsoft.ContainerService.json#/definitions/ManagedClusterPodIdentityException'
                      properties:
                        name:
                          description: 'Name: The name of the pod identity exception.'
                          type: string
                        namespace:
                          description: 'Namespace: The namespace of the pod identity
                            exception.'
                          type: string
                        podLabels:
                          additionalProperties:
                            type: string
                          description: 'PodLabels: The pod labels to match.'
                          type: object
                      required:
                      - name
                      - namespace
                      - podLabels
                      type: object
                    type: array
                type: object
              privateLinkResources:
                description: 'PrivateLinkResources: Private link resources associated
                  with the cluster.'
                items:
                  description: 'Generated from: https://schema.management.azure.com/schemas/2021-05-01/Microsoft.ContainerService.json#/definitions/PrivateLinkResource'
                  properties:
                    groupId:
                      description: 'GroupId: The group ID of the resource.'
                      type: string
                    name:
                      description: 'Name: The name of the private link resource.'
                      type: string
                    reference:
                      description: 'Reference: The ID of the private link resource.'
                      properties:
                        armId:
                          description: 'TODO: The below regex may be overly restrictive
                            ARMID is a string of the form /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}.
                            The /resourcegroups/{resourceGroupName} bit is optional
                            as some resources are scoped at the subscription level
                            ARMID is mutually exclusive with Group, Kind, Namespace
                            and Name.'
                          pattern: (?i)^/subscriptions/([^/]+)(/resourcegroups/([^/]+))?/providers/([^/]+)/([^/]+/[^/]+)(/([^/]+/[^/]+))*$
                          type: string
                        group:
                          description: Group is the Kubernetes group of the resource.
                          type: string
                        kind:
                          description: Kind is the Kubernetes kind of the resource.
                          type: string
                        name:
                          description: Name is the Kubernetes name of the resource.
                          type: string
                      type: object
                    requiredMembers:
                      description: 'RequiredMembers: The RequiredMembers of the resource'
                      items:
                        type: string
                      type: array
                    type:
                      description: 'Type: The resource type.'
                      type: string
                  type: object
                type: array
              servicePrincipalProfile:
                description: 'ServicePrincipalProfile: Information about a service
                  principal identity for the cluster to use for manipulating Azure
                  APIs.'
                properties:
                  clientId:
                    description: 'ClientId: The ID for the service principal.'
                    type: string
                  secret:
                    description: 'Secret: The secret password associated with the
                      service principal in plain text.'
                    type: string
                required:
                - clientId
                type: object
              sku:
                description: 'Sku: The SKU of a Managed Cluster.'
                properties:
                  name:
                    description: 'Name: The name of a managed cluster SKU.'
                    enum:
                    - Basic
                    type: string
                  tier:
                    description: 'Tier: If not specified, the default is ''Free''.
                      See [uptime SLA](https://docs.microsoft.com/azure/aks/uptime-sla)
                      for more details.'
                    enum:
                    - Free
                    - Paid
                    type: string
                type: object
              tags:
                additionalProperties:
                  type: string
                description: 'Tags: Name-value pairs to add to the resource'
                type: object
              windowsProfile:
                description: 'WindowsProfile: Profile for Windows VMs in the managed
                  cluster.'
                properties:
                  adminPassword:
                    description: 'AdminPassword: Specifies the password of the administrator
                      account. Minimum-length: 8 characters Max-length: 123 characters
                      Complexity requirements: 3 out of 4 conditions below need to
                      be fulfilled Has lower characters Has upper characters Has a
                      digit Has a special character (Regex match [\W_]) Disallowed
                      values: "abc@123", "P@$$w0rd", "P@ssw0rd", "P@ssword123", "Pa$$word",
                      "pass@word1", "Password!", "Password1", "Password22", "iloveyou!"'
                    type: string
                  adminUsername:
                    description: 'AdminUsername: Specifies the name of the administrator
                      account. Restriction: Cannot end in "." Disallowed values: "administrator",
                      "admin", "user", "user1", "test", "user2", "test1", "user3",
                      "admin1", "1", "123", "a", "actuser", "adm", "admin2", "aspnet",
                      "backup", "console", "david", "guest", "john", "owner", "root",
                      "server", "sql", "support", "support_388945a0", "sys", "test2",
                      "test3", "user4", "user5". Minimum-length: 1 character Max-length:
                      20 characters'
                    type: string
                  enableCSIProxy:
                    description: 'EnableCSIProxy: For more details on CSI proxy, see
                      the [CSI proxy GitHub repo](https://github.com/kubernetes-csi/csi-proxy).'
                    type: boolean
                  licenseType:
                    description: 'LicenseType: The license type to use for Windows
                      VMs. See [Azure Hybrid User Benefits](https://azure.microsoft.com/pricing/hybrid-benefit/faq/)
                      for more details.'
                    enum:
                    - None
                    - Windows_Server
                    type: string
                required:
                - adminUsername
                type: object
            required:
            - owner
            type: object
          status:
            properties:
              aadProfile:
                description: 'AadProfile: The Azure Active Directory configuration.'
                properties:
                  adminGroupObjectIDs:
                    description: 'AdminGroupObjectIDs: The list of AAD group object
                      IDs that will have admin role of the cluster.'
                    items:
                      type: string
                    type: array
                  clientAppID:
                    description: 'ClientAppID: The client AAD application ID.'
                    type: string
                  enableAzureRBAC:
                    description: 'EnableAzureRBAC: Whether to enable Azure RBAC for
                      Kubernetes authorization.'
                    type: boolean
                  managed:
                    description: 'Managed: Whether to enable managed AAD.'
                    type: boolean
                  serverAppID:
                    description: 'ServerAppID: The server AAD application ID.'
                    type: string
                  serverAppSecret:
                    description: 'ServerAppSecret: The server AAD application secret.'
                    type: string
                  tenantID:
                    description: 'TenantID: The AAD tenant ID to use for authentication.
                      If not specified, will use the tenant of the deployment subscription.'
                    type: string
                type: object
              addonProfiles:
                description: 'AddonProfiles: The profile of managed cluster add-on.'
                x-kubernetes-preserve-unknown-fields: true
              agentPoolProfiles:
                description: 'AgentPoolProfiles: The agent pool properties.'
                items:
                  properties:
                    availabilityZones:
                      description: 'AvailabilityZones: The list of Availability zones
                        to use for nodes. This can only be specified if the AgentPoolType
                        property is ''VirtualMachineScaleSets''.'
                      items:
                        type: string
                      type: array
                    count:
                      description: 'Count: Number of agents (VMs) to host docker containers.
                        Allowed values must be in the range of 0 to 1000 (inclusive)
                        for user pools and in the range of 1 to 1000 (inclusive) for
                        system pools. The default value is 1.'
                      type: integer
                    enableAutoScaling:
                      description: 'EnableAutoScaling: Whether to enable auto-scaler'
                      type: boolean
                    enableEncryptionAtHost:
                      description: 'EnableEncryptionAtHost: This is only supported
                        on certain VM sizes and in certain Azure regions. For more
                        information, see: https://docs.microsoft.com/azure/aks/enable-host-encryption'
                      type: boolean
                    enableFIPS:
                      description: 'EnableFIPS: See [Add a FIPS-enabled node pool](https://docs.microsoft.com/azure/aks/use-multiple-node-pools#add-a-fips-enabled-node-pool-preview)
                        for more details.'
                      type: boolean
                    enableNodePublicIP:
                      description: 'EnableNodePublicIP: Some scenarios may require
                        nodes in a node pool to receive their own dedicated public
                        IP addresses. A common scenario is for gaming workloads, where
                        a console needs to make a direct connection to a cloud virtual
                        machine to minimize hops. For more information see [assigning
                        a public IP per node](https://docs.microsoft.com/azure/aks/use-multiple-node-pools#assign-a-public-ip-per-node-for-your-node-pools).
                        The default is false.'
                      type: boolean
                    enableUltraSSD:
                      description: 'EnableUltraSSD: Whether to enable UltraSSD'
                      type: boolean
                    gpuInstanceProfile:
                      description: 'GpuInstanceProfile: GPUInstanceProfile to be used
                        to specify GPU MIG instance profile for supported GPU VM SKU.'
                      type: string
                    kubeletConfig:
                      description: 'KubeletConfig: The Kubelet configuration on the
                        agent pool nodes.'
                      properties:
                        allowedUnsafeSysctls:
                          description: 'AllowedUnsafeSysctls: Allowed list of unsafe
                            sysctls or unsafe sysctl patterns (ending in `*`).'
                          items:
                            type: string
                          type: array
                        containerLogMaxFiles:
                          description: 'ContainerLogMaxFiles: The maximum number of
                            container log files that can be present for a container.
                            The number must be ≥ 2.'
                          type: integer
                        containerLogMaxSizeMB:
                          description: 'ContainerLogMaxSizeMB: The maximum size (e.g.
                            10Mi) of container log file before it is rotated.'
                          type: integer
                        cpuCfsQuota:
                          description: 'CpuCfsQuota: The default is true.'
                          type: boolean
                        cpuCfsQuotaPeriod:
                          description: 'CpuCfsQuotaPeriod: The default is ''100ms.''
                            Valid values are a sequence of decimal numbers with an
                            optional fraction and a unit suffix. For example: ''300ms'',
                            ''2h45m''. Supported units are ''ns'', ''us'', ''ms'',
                            ''s'', ''m'', and ''h''.'
                          type: string
                        cpuManagerPolicy:
                          description: 'CpuManagerPolicy: The default is ''none''.
                            See [Kubernetes CPU management policies](https://kubernetes.io/docs/tasks/administer-cluster/cpu-management-policies/#cpu-management-policies)
                            for more information. Allowed values are ''none'' and
                            ''static''.'
                          type: string
                        failSwapOn:
                          description: 'FailSwapOn: If set to true it will make the
                            Kubelet fail to start if swap is enabled on the node.'
                          type: boolean
                        imageGcHighThreshold:
                          description: 'ImageGcHighThreshold: To disable image garbage
                            collection, set to 100. The default is 85%'
                          type: integer
                        imageGcLowThreshold:
                          description: 'ImageGcLowThreshold: This cannot be set higher
                            than imageGcHighThreshold. The default is 80%'
                          type: integer
                        podMaxPids:
                          description: 'PodMaxPids: The maximum number of processes
                            per pod.'
                          type: integer
                        topologyManagerPolicy:
                          description: 'TopologyManagerPolicy: For more information
                            see [Kubernetes Topology Manager](https://kubernetes.io/docs/tasks/administer-cluster/topology-manager).
                            The default is ''none''. Allowed values are ''none'',
                            ''best-effort'', ''restricted'', and ''single-numa-node''.'
                          type: string
                      type: object
                    kubeletDiskType:
                      type: string
                    linuxOSConfig:
                      description: 'LinuxOSConfig: The OS configuration of Linux agent
                        nodes.'
                      properties:
                        swapFileSizeMB:
                          description: 'SwapFileSizeMB: The size in MB of a swap file
                            that will be created on each node.'
                          type: integer
                        sysctls:
                          description: 'Sysctls: Sysctl settings for Linux agent nodes.'
                          properties:
                            fsAioMaxNr:
                              description: 'FsAioMaxNr: Sysctl setting fs.aio-max-nr.'
                              type: integer
                            fsFileMax:
                              description: 'FsFileMax: Sysctl setting fs.file-max.'
                              type: integer
                            fsInotifyMaxUserWatches:
                              description: 'FsInotifyMaxUserWatches: Sysctl setting
                                fs.inotify.max_user_watches.'
                              type: integer
                            fsNrOpen:
                              description: 'FsNrOpen: Sysctl setting fs.nr_open.'
                              type: integer
                            kernelThreadsMax:
                              description: 'KernelThreadsMax: Sysctl setting kernel.threads-max.'
                              type: integer
                            netCoreNetdevMaxBacklog:
                              description: 'NetCoreNetdevMaxBacklog: Sysctl setting
                                net.core.netdev_max_backlog.'
                              type: integer
                            netCoreOptmemMax:
                              description: 'NetCoreOptmemMax: Sysctl setting net.core.optmem_max.'
                              type: integer
                            netCoreRmemDefault:
                              description: 'NetCoreRmemDefault: Sysctl setting net.core.rmem_default.'
                              type: integer
                            netCoreRmemMax:
                              description: 'NetCoreRmemMax: Sysctl setting net.core.rmem_max.'
                              type: integer
                            netCoreSomaxconn:
                              description: 'NetCoreSomaxconn: Sysctl setting net.core.somaxconn.'
                              type: integer
                            netCoreWmemDefault:
                              description: 'NetCoreWmemDefault: Sysctl setting net.core.wmem_default.'
                              type: integer
                            netCoreWmemMax:
                              description: 'NetCoreWmemMax: Sysctl setting net.core.wmem_max.'
                              type: integer
                            netIpv4IpLocalPortRange:
                              description: 'NetIpv4IpLocalPortRange: Sysctl setting
                                net.ipv4.ip_local_port_range.'
                              type: string
                            netIpv4NeighDefaultGcThresh1:
                              description: 'NetIpv4NeighDefaultGcThresh1: Sysctl setting
                                net.ipv4.neigh.default.gc_thresh1.'
                              type: integer
                            netIpv4NeighDefaultGcThresh2:
                              description: 'NetIpv4NeighDefaultGcThresh2: Sysctl setting
                                net.ipv4.neigh.default.gc_thresh2.'
                              type: integer
                            netIpv4NeighDefaultGcThresh3:
                              description: 'NetIpv4NeighDefaultGcThresh3: Sysctl setting
                                net.ipv4.neigh.default.gc_thresh3.'
                              type: integer
                            netIpv4TcpFinTimeout:
                              description: 'NetIpv4TcpFinTimeout: Sysctl setting net.ipv4.tcp_fin_timeout.'
                              type: integer
                            netIpv4TcpKeepaliveProbes:
                              description: 'NetIpv4TcpKeepaliveProbes: Sysctl setting
                                net.ipv4.tcp_keepalive_probes.'
                              type: integer
                            netIpv4TcpKeepaliveTime:
                              description: 'NetIpv4TcpKeepaliveTime: Sysctl setting
                                net.ipv4.tcp_keepalive_time.'
                              type: integer
                            netIpv4TcpMaxSynBacklog:
                              description: 'NetIpv4TcpMaxSynBacklog: Sysctl setting
                                net.ipv4.tcp_max_syn_backlog.'
                              type: integer
                            netIpv4TcpMaxTwBuckets:
                              description: 'NetIpv4TcpMaxTwBuckets: Sysctl setting
                                net.ipv4.tcp_max_tw_buckets.'
                              type: integer
                            netIpv4TcpTwReuse:
                              description: 'NetIpv4TcpTwReuse: Sysctl setting net.ipv4.tcp_tw_reuse.'
                              type: boolean
                            netIpv4TcpkeepaliveIntvl:
                              description: 'NetIpv4TcpkeepaliveIntvl: Sysctl setting
                                net.ipv4.tcp_keepalive_intvl.'
                              type: integer
                            netNetfilterNfConntrackBuckets:
                              description: 'NetNetfilterNfConntrackBuckets: Sysctl
                                setting net.netfilter.nf_conntrack_buckets.'
                              type: integer
                            netNetfilterNfConntrackMax:
                              description: 'NetNetfilterNfConntrackMax: Sysctl setting
                                net.netfilter.nf_conntrack_max.'
                              type: integer
                            vmMaxMapCount:
                              description: 'VmMaxMapCount: Sysctl setting vm.max_map_count.'
                              type: integer
                            vmSwappiness:
                              description: 'VmSwappiness: Sysctl setting vm.swappiness.'
                              type: integer
                            vmVfsCachePressure:
                              description: 'VmVfsCachePressure: Sysctl setting vm.vfs_cache_pressure.'
                              type: integer
                          type: object
                        transparentHugePageDefrag:
                          description: 'TransparentHugePageDefrag: Valid values are
                            ''always'', ''defer'', ''defer+madvise'', ''madvise''
                            and ''never''. The default is ''madvise''. For more information
                            see [Transparent Hugepages](https://www.kernel.org/doc/html/latest/admin-guide/mm/transhuge.html#admin-guide-transhuge).'
                          type: string
                        transparentHugePageEnabled:
                          description: 'TransparentHugePageEnabled: Valid values are
                            ''always'', ''madvise'', and ''never''. The default is
                            ''always''. For more information see [Transparent Hugepages](https://www.kernel.org/doc/html/latest/admin-guide/mm/transhuge.html#admin-guide-transhuge).'
                          type: string
                      type: object
                    maxCount:
                      description: 'MaxCount: The maximum number of nodes for auto-scaling'
                      type: integer
                    maxPods:
                      description: 'MaxPods: The maximum number of pods that can run
                        on a node.'
                      type: integer
                    minCount:
                      description: 'MinCount: The minimum number of nodes for auto-scaling'
                      type: integer
                    mode:
                      type: string
                    name:
                      description: 'Name: Windows agent pool names must be 6 characters
                        or less.'
                      type: string
                    nodeImageVersion:
                      description: 'NodeImageVersion: The version of node image'
                      type: string
                    nodeLabels:
                      additionalProperties:
                        type: string
                      description: 'NodeLabels: The node labels to be persisted across
                        all nodes in agent pool.'
                      type: object
                    nodePublicIPPrefixID:
                      description: 'NodePublicIPPrefixID: This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIPPrefixName}'
                      type: string
                    nodeTaints:
                      description: 'NodeTaints: The taints added to new nodes during
                        node pool create and scale. For example, key=value:NoSchedule.'
                      items:
                        type: string
                      type: array
                    orchestratorVersion:
                      description: 'OrchestratorVersion: As a best practice, you should
                        upgrade all node pools in an AKS cluster to the same Kubernetes
                        version. The node pool version must have the same major version
                        as the control plane. The node pool minor version must be
                        within two minor versions of the control plane version. The
                        node pool version cannot be greater than the control plane
                        version. For more information see [upgrading a node pool](https://docs.microsoft.com/azure/aks/use-multiple-node-pools#upgrade-a-node-pool).'
                      type: string
                    osDiskSizeGB:
                      type: integer
                    osDiskType:
                      type: string
                    osSKU:
                      type: string
                    osType:
                      type: string
                    podSubnetID:
                      description: 'PodSubnetID: If omitted, pod IPs are statically
                        assigned on the node subnet (see vnetSubnetID for more details).
                        This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}'
                      type: string
                    powerState:
                      description: 'PowerState: Describes whether the Agent Pool is
                        Running or Stopped'
                      properties:
                        code:
                          description: 'Code: Tells whether the cluster is Running
                            or Stopped'
                          type: string
                      type: object
                    provisioningState:
                      description: 'ProvisioningState: The current deployment or provisioning
                        state.'
                      type: string
                    proximityPlacementGroupID:
                      description: 'ProximityPlacementGroupID: The ID for Proximity
                        Placement Group.'
                      type: string
                    scaleSetEvictionPolicy:
                      description: 'ScaleSetEvictionPolicy: This cannot be specified
                        unless the scaleSetPriority is ''Spot''. If not specified,
                        the default is ''Delete''.'
                      type: string
                    scaleSetPriority:
                      description: 'ScaleSetPriority: The Virtual Machine Scale Set
                        priority. If not specified, the default is ''Regular''.'
                      type: string
                    spotMaxPrice:
                      description: 'SpotMaxPrice: Possible values are any decimal
                        value greater than zero or -1 which indicates the willingness
                        to pay any on-demand price. For more details on spot pricing,
                        see [spot VMs pricing](https://docs.microsoft.com/azure/virtual-machines/spot-vms#pricing)'
                      type: number
                    tags:
                      additionalProperties:
                        type: string
                      description: 'Tags: The tags to be persisted on the agent pool
                        virtual machine scale set.'
                      type: object
                    type:
                      type: string
                    upgradeSettings:
                      description: 'UpgradeSettings: Settings for upgrading the agentpool'
                      properties:
                        maxSurge:
                          description: 'MaxSurge: This can either be set to an integer
                            (e.g. ''5'') or a percentage (e.g. ''50%''). If a percentage
                            is specified, it is the percentage of the total agent
                            pool size at the time of the upgrade. For percentages,
                            fractional nodes are rounded up. If not specified, the
                            default is 1. For more information, including best practices,
                            see: https://docs.microsoft.com/azure/aks/upgrade-cluster#customize-node-surge-upgrade'
                          type: string
                      type: object
                    vmSize:
                      description: 'VmSize: VM size availability varies by region.
                        If a node contains insufficient compute resources (memory,
                        cpu, etc) pods might fail to run correctly. For more details
                        on restricted VM sizes, see: https://docs.microsoft.com/azure/aks/quotas-skus-regions'
                      type: string
                    vnetSubnetID:
                      description: 'VnetSubnetID: If this is not specified, a VNET
                        and subnet will be generated and used. If no podSubnetID is
                        specified, this applies to nodes and pods, otherwise it applies
                        to just nodes. This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}'
                      type: string
                  type: object
                type: array
              apiServerAccessProfile:
                description: 'ApiServerAccessProfile: The access profile for managed
                  cluster API server.'
                properties:
                  authorizedIPRanges:
                    description: 'AuthorizedIPRanges: IP ranges are specified in CIDR
                      format, e.g. 137.117.106.88/29. This feature is not compatible
                      with clusters that use Public IP Per Node, or clusters that
                      are using a Basic Load Balancer. For more information see [API
                      server authorized IP ranges](https://docs.microsoft.com/azure/aks/api-server-authorized-ip-ranges).'
                    items:
                      type: string
                    type: array
                  enablePrivateCluster:
                    description: 'EnablePrivateCluster: For more details, see [Creating
                      a private AKS cluster](https://docs.microsoft.com/azure/aks/private-clusters).'
                    type: boolean
                  enablePrivateClusterPublicFQDN:
                    description: 'EnablePrivateClusterPublicFQDN: Whether to create
                      additional public FQDN for private cluster or not.'
                    type: boolean
                  privateDNSZone:
                    description: 'PrivateDNSZone: The default is System. For more
                      details see [configure private DNS zone](https://docs.microsoft.com/azure/aks/private-clusters#configure-private-dns-zone).
                      Allowed values are ''system'' and ''none''.'
                    type: string
                type: object
              autoScalerProfile:
                description: 'AutoScalerProfile: Parameters to be applied to the cluster-autoscaler
                  when enabled'
                properties:
                  balance-similar-node-groups:
                    description: 'BalanceSimilarNodeGroups: Valid values are ''true''
                      and ''false'''
                    type: string
                  expander:
                    description: 'Expander: If not specified, the default is ''random''.
                      See [expanders](https://github.com/kubernetes/autoscaler/blob/master/cluster-autoscaler/FAQ.md#what-are-expanders)
                      for more information.'
                    type: string
                  max-empty-bulk-delete:
                    description: 'MaxEmptyBulkDelete: The default is 10.'
                    type: string
                  max-graceful-termination-sec:
                    description: 'MaxGracefulTerminationSec: The default is 600.'
                    type: string
                  max-node-provision-time:
                    description: 'MaxNodeProvisionTime: The default is ''15m''. Values
                      must be an integer followed by an ''m''. No unit of time other
                      than minutes (m) is supported.'
                    type: string
                  max-total-unready-percentage:
                    description: 'MaxTotalUnreadyPercentage: The default is 45. The
                      maximum is 100 and the minimum is 0.'
                    type: string
                  new-pod-scale-up-delay:
                    description: 'NewPodScaleUpDelay: For scenarios like burst/batch
                      scale where you don''t want CA to act before the kubernetes
                      scheduler could schedule all the pods, you can tell CA to ignore
                      unscheduled pods before they''re a certain age. The default
                      is ''0s''. Values must be an integer followed by a unit (''s''
                      for seconds, ''m'' for minutes, ''h'' for hours, etc).'
                    type: string
                  ok-total-unready-count:
                    description: 'OkTotalUnreadyCount: This must be an integer. The
                      default is 3.'
                    type: string
                  scale-down-delay-after-add:
                    description: 'ScaleDownDelayAfterAdd: The default is ''10m''.
                      Values must be an integer followed by an ''m''. No unit of time
                      other than minutes (m) is supported.'
                    type: string
                  scale-down-delay-after-delete:
                    description: 'ScaleDownDelayAfterDelete: The default is the scan-interval.
                      Values must be an integer followed by an ''m''. No unit of time
                      other than minutes (m) is supported.'
                    type: string
                  scale-down-delay-after-failure:
                    description: 'ScaleDownDelayAfterFailure: The default is ''3m''.
                      Values must be an integer followed by an ''m''. No unit of time
                      other than minutes (m) is supported.'
                    type: string
                  scale-down-unneeded-time:
                    description: 'ScaleDownUnneededTime: The default is ''10m''. Values
                      must be an integer followed by an ''m''. No unit of time other
                      than minutes (m) is supported.'
                    type: string
                  scale-down-unready-time:
                    description: 'ScaleDownUnreadyTime: The default is ''20m''. Values
                      must be an integer followed by an ''m''. No unit of time other
                      than minutes (m) is supported.'
                    type: string
                  scale-down-utilization-threshold:
                    description: 'ScaleDownUtilizationThreshold: The default is ''0.5''.'
                    type: string
                  scan-interval:
                    description: 'ScanInterval: The default is ''10''. Values must
                      be an integer number of seconds.'
                    type: string
                  skip-nodes-with-local-storage:
                    description: 'SkipNodesWithLocalStorage: The default is true.'
                    type: string
                  skip-nodes-with-system-pods:
                    description: 'SkipNodesWithSystemPods: The default is true.'
                    type: string
                type: object
              autoUpgradeProfile:
                description: 'AutoUpgradeProfile: The auto upgrade configuration.'
                properties:
                  upgradeChannel:
                    description: 'UpgradeChannel: For more information see [setting
                      the AKS cluster auto-upgrade channel](https://docs.microsoft.com/azure/aks/upgrade-cluster#set-auto-upgrade-channel).'
                    type: string
                type: object
              azurePortalFQDN:
                description: 'AzurePortalFQDN: The Azure Portal requires certain Cross-Origin
                  Resource Sharing (CORS) headers to be sent in some responses, which
                  Kubernetes APIServer doesn''t handle by default. This special FQDN
                  supports CORS, allowing the Azure Portal to function properly.'
                type: string
              conditions:
                description: 'Conditions: The observed state of the resource'
                items:
                  description: Condition defines an extension to status (an observation)
                    of a resource
                  properties:
                    lastTransitionTime:
                      description: LastTransitionTime is the last time the condition
                        transitioned from one status to another.
                      format: date-time
                      type: string
                    message:
                      description: Message is a human readable message indicating
                        details about the transition. This field may be empty.
                      type: string
                    observedGeneration:
                      description: ObservedGeneration is the .metadata.generation
                        that the condition was set based upon. For instance, if .metadata.generation
                        is currently 12, but the .status.condition[x].observedGeneration
                        is 9, the condition is out of date with respect to the current
                        state of the instance.
                      format: int64
                      type: integer
                    reason:
                      description: Reason for the condition's last transition. Reasons
                        are upper CamelCase (PascalCase) with no spaces. A reason
                        is always provided, this field will not be empty.
                      type: string
                    severity:
                      description: Severity with which to treat failures of this type
                        of condition. For conditions which have positive polarity
                        (Status == True is their normal/healthy state), this will
                        be omitted when Status == True For conditions which have negative
                        polarity (Status == False is their normal/healthy state),
                        this will be omitted when Status == False. This is omitted
                        in all cases when Status == Unknown
                      type: string
                    status:
                      description: Status of the condition, one of True, False, or
                        Unknown.
                      type: string
                    type:
                      description: Type of condition.
                      type: string
                  required:
                  - lastTransitionTime
                  - reason
                  - status
                  - type
                  type: object
                type: array
              disableLocalAccounts:
                description: 'DisableLocalAccounts: If set to true, getting static
                  credentials will be disabled for this cluster. This must only be
                  used on Managed Clusters that are AAD enabled. For more details
                  see [disable local accounts](https://docs.microsoft.com/azure/aks/managed-aad#disable-local-accounts-preview).'
                type: boolean
              diskEncryptionSetID:
                description: 'DiskEncryptionSetID: This is of the form: ''/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskEncryptionSets/{encryptionSetName}'''
                type: string
              dnsPrefix:
                description: 'DnsPrefix: This cannot be updated once the Managed Cluster
                  has been created.'
                type: string
              enablePodSecurityPolicy:
                description: 'EnablePodSecurityPolicy: (DEPRECATING) Whether to enable
                  Kubernetes pod security policy (preview). This feature is set for
                  removal on October 15th, 2020. Learn more at aka.ms/aks/azpodpolicy.'
                type: boolean
              enableRBAC:
                description: 'EnableRBAC: Whether to enable Kubernetes Role-Based
                  Access Control.'
                type: boolean
              extendedLocation:
                description: 'ExtendedLocation: The extended location of the Virtual
                  Machine.'
                properties:
                  name:
                    description: 'Name: The name of the extended location.'
                    type: string
                  type:
                    description: 'Type: The type of the extended location.'
                    type: string
                type: object
              fqdn:
                description: 'Fqdn: The FQDN of the master pool.'
                type: string
              fqdnSubdomain:
                description: 'FqdnSubdomain: This cannot be updated once the Managed
                  Cluster has been created.'
                type: string
              httpProxyConfig:
                description: 'HttpProxyConfig: Configurations for provisioning the
                  cluster with HTTP proxy servers.'
                properties:
                  httpProxy:
                    description: 'HttpProxy: The HTTP proxy server endpoint to use.'
                    type: string
                  httpsProxy:
                    description: 'HttpsProxy: The HTTPS proxy server endpoint to use.'
                    type: string
                  noProxy:
                    description: 'NoProxy: The endpoints that should not go through
                      proxy.'
                    items:
                      type: string
                    type: array
                  trustedCa:
                    description: 'TrustedCa: Alternative CA cert to use for connecting
                      to proxy servers.'
                    type: string
                type: object
              id:
                description: 'Id: Resource Id'
                type: string
              identity:
                description: 'Identity: The identity of the managed cluster, if configured.'
                properties:
                  principalId:
                    description: 'PrincipalId: The principal id of the system assigned
                      identity which is used by master components.'
                    type: string
                  tenantId:
                    description: 'TenantId: The tenant id of the system assigned identity
                      which is used by master components.'
                    type: string
                  type:
                    description: 'Type: For more information see [use managed identities
                      in AKS](https://docs.microsoft.com/azure/aks/use-managed-identity).'
                    type: string
                  userAssignedIdentities:
                    additionalProperties:
                      properties:
                        clientId:
                          description: 'ClientId: The client id of user assigned identity.'
                          type: string
                        principalId:
                          description: 'PrincipalId: The principal id of user assigned
                            identity.'
                          type: string
                      type: object
                    description: 'UserAssignedIdentities: The keys must be ARM resource
                      IDs in the form: ''/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}''.'
                    type: object
                type: object
              identityProfile:
                description: 'IdentityProfile: Identities associated with the cluster.'
                x-kubernetes-preserve-unknown-fields: true
              kubernetesVersion:
                description: 'KubernetesVersion: When you upgrade a supported AKS
                  cluster, Kubernetes minor versions cannot be skipped. All upgrades
                  must be performed sequentially by major version number. For example,
                  upgrades between 1.14.x -> 1.15.x or 1.15.x -> 1.16.x are allowed,
                  however 1.14.x -> 1.16.x is not allowed. See [upgrading an AKS cluster](https://docs.microsoft.com/azure/aks/upgrade-cluster)
                  for more details.'
                type: string
              linuxProfile:
                description: 'LinuxProfile: The profile for Linux VMs in the Managed
                  Cluster.'
                properties:
                  adminUsername:
                    description: 'AdminUsername: The administrator username to use
                      for Linux VMs.'
                    type: string
                  ssh:
                    description: 'Ssh: The SSH configuration for Linux-based VMs running
                      on Azure.'
                    properties:
                      publicKeys:
                        description: 'PublicKeys: The list of SSH public keys used
                          to authenticate with Linux-based VMs. A maximum of 1 key
                          may be specified.'
                        items:
                          properties:
                            keyData:
                              description: 'KeyData: Certificate public key used to
                                authenticate with VMs through SSH. The certificate
                                must be in PEM format with or without headers.'
                              type: string
                          required:
                          - keyData
                          type: object
                        type: array
                    required:
                    - publicKeys
                    type: object
                required:
                - adminUsername
                - ssh
                type: object
              location:
                description: 'Location: Resource location'
                type: string
              maxAgentPools:
                description: 'MaxAgentPools: The max number of agent pools for the
                  managed cluster.'
                type: integer
              name:
                description: 'Name: Resource name'
                type: string
              networkProfile:
                description: 'NetworkProfile: The network configuration profile.'
                properties:
                  dnsServiceIP:
                    description: 'DnsServiceIP: An IP address assigned to the Kubernetes
                      DNS service. It must be within the Kubernetes service address
                      range specified in serviceCidr.'
                    type: string
                  dockerBridgeCidr:
                    description: 'DockerBridgeCidr: A CIDR notation IP range assigned
                      to the Docker bridge network. It must not overlap with any Subnet
                      IP ranges or the Kubernetes service address range.'
                    type: string
                  loadBalancerProfile:
                    description: 'LoadBalancerProfile: Profile of the cluster load
                      balancer.'
                    properties:
                      allocatedOutboundPorts:
                        description: 'AllocatedOutboundPorts: The desired number of
                          allocated SNAT ports per VM. Allowed values are in the range
                          of 0 to 64000 (inclusive). The default value is 0 which
                          results in Azure dynamically allocating ports.'
                        type: integer
                      effectiveOutboundIPs:
                        description: 'EffectiveOutboundIPs: The effective outbound
                          IP resources of the cluster load balancer.'
                        items:
                          properties:
                            id:
                              description: 'Id: The fully qualified Azure resource
                                id.'
                              type: string
                          type: object
                        type: array
                      idleTimeoutInMinutes:
                        description: 'IdleTimeoutInMinutes: Desired outbound flow
                          idle timeout in minutes. Allowed values are in the range
                          of 4 to 120 (inclusive). The default value is 30 minutes.'
                        type: integer
                      managedOutboundIPs:
                        description: 'ManagedOutboundIPs: Desired managed outbound
                          IPs for the cluster load balancer.'
                        properties:
                          count:
                            description: 'Count: The desired number of outbound IPs
                              created/managed by Azure for the cluster load balancer.
                              Allowed values must be in the range of 1 to 100 (inclusive).
                              The default value is 1.'
                            type: integer
                        type: object
                      outboundIPPrefixes:
                        description: 'OutboundIPPrefixes: Desired outbound IP Prefix
                          resources for the cluster load balancer.'
                        properties:
                          publicIPPrefixes:
                            description: 'PublicIPPrefixes: A list of public IP prefix
                              resources.'
                            items:
                              properties:
                                id:
                                  description: 'Id: The fully qualified Azure resource
                                    id.'
                                  type: string
                              type: object
                            type: array
                        type: object
                      outboundIPs:
                        description: 'OutboundIPs: Desired outbound IP resources for
                          the cluster load balancer.'
                        properties:
                          publicIPs:
                            description: 'PublicIPs: A list of public IP resources.'
                            items:
                              properties:
                                id:
                                  description: 'Id: The fully qualified Azure resource
                                    id.'
                                  type: string
                              type: object
                            type: array
                        type: object
                    type: object
                  loadBalancerSku:
                    description: 'LoadBalancerSku: The default is ''standard''. See
                      [Azure Load Balancer SKUs](https://docs.microsoft.com/azure/load-balancer/skus)
                      for more information about the differences between load balancer
                      SKUs.'
                    type: string
                  networkMode:
                    description: 'NetworkMode: This cannot be specified if networkPlugin
                      is anything other than ''azure''.'
                    type: string
                  networkPlugin:
                    description: 'NetworkPlugin: Network plugin used for building
                      the Kubernetes network.'
                    type: string
                  networkPolicy:
                    description: 'NetworkPolicy: Network policy used for building
                      the Kubernetes network.'
                    type: string
                  outboundType:
                    description: 'OutboundType: This can only be set at cluster creation
                      time and cannot be changed later. For more information see [egress
                      outbound type](https://docs.microsoft.com/azure/aks/egress-outboundtype).'
                    type: string
                  podCidr:
                    description: 'PodCidr: A CIDR notation IP range from which to
                      assign pod IPs when kubenet is used.'
                    type: string
                  serviceCidr:
                    description: 'ServiceCidr: A CIDR notation IP range from which
                      to assign service cluster IPs. It must not overlap with any
                      Subnet IP ranges.'
                    type: string
                type: object
              nodeResourceGroup:
                description: 'NodeResourceGroup: The name of the resource group containing
                  agent pool nodes.'
                type: string
              podIdentityProfile:
                description: 'PodIdentityProfile: See [use AAD pod identity](https://docs.microsoft.com/azure/aks/use-azure-ad-pod-identity)
                  for more details on AAD pod identity integration.'
                properties:
                  allowNetworkPluginKubenet:
                    description: 'AllowNetworkPluginKubenet: Running in Kubenet is
                      disabled by default due to the security related nature of AAD
                      Pod Identity and the risks of IP spoofing. See [using Kubenet
                      network plugin with AAD Pod Identity](https://docs.microsoft.com/azure/aks/use-azure-ad-pod-identity#using-kubenet-network-plugin-with-azure-active-directory-pod-managed-identities)
                      for more information.'
                    type: boolean
                  enabled:
                    description: 'Enabled: Whether the pod identity addon is enabled.'
                    type: boolean
                  userAssignedIdentities:
                    description: 'UserAssignedIdentities: The pod identities to use
                      in the cluster.'
                    items:
                      properties:
                        bindingSelector:
                          description: 'BindingSelector: The binding selector to use
                            for the AzureIdentityBinding resource.'
                          type: string
                        identity:
                          description: 'Identity: The user assigned identity details.'
                          properties:
                            clientId:
                              description: 'ClientId: The client ID of the user assigned
                                identity.'
                              type: string
                            objectId:
                              description: 'ObjectId: The object ID of the user assigned
                                identity.'
                              type: string
                            resourceId:
                              description: 'ResourceId: The resource ID of the user
                                assigned identity.'
                              type: string
                          type: object
                        name:
                          description: 'Name: The name of the pod identity.'
                          type: string
                        namespace:
                          description: 'Namespace: The namespace of the pod identity.'
                          type: string
                        provisioningInfo:
                          properties:
                            error:
                              description: 'Error: Pod identity assignment error (if
                                any).'
                              properties:
                                error:
                                  description: 'Error: Details about the error.'
                                  properties:
                                    code:
                                      description: 'Code: An identifier for the error.
                                        Codes are invariant and are intended to be
                                        consumed programmatically.'
                                      type: string
                                    details:
                                      description: 'Details: A list of additional
                                        details about the error.'
                                      items:
                                        properties:
                                          code:
                                            description: 'Code: An identifier for
                                              the error. Codes are invariant and are
                                              intended to be consumed programmatically.'
                                            type: string
                                          message:
                                            description: 'Message: A message describing
                                              the error, intended to be suitable for
                                              display in a user interface.'
                                            type: string
                                          target:
                                            description: 'Target: The target of the
                                              particular error. For example, the name
                                              of the property in error.'
                                            type: string
                                        type: object
                                      type: array
                                    message:
                                      description: 'Message: A message describing
                                        the error, intended to be suitable for display
                                        in a user interface.'
                                      type: string
                                    target:
                                      description: 'Target: The target of the particular
                                        error. For example, the name of the property
                                        in error.'
                                      type: string
                                  type: object
                              type: object
                          type: object
                        provisioningState:
                          description: 'ProvisioningState: The current provisioning
                            state of the pod identity.'
                          type: string
                      required:
                      - identity
                      - name
                      - namespace
                      type: object
                    type: array
                  userAssignedIdentityExceptions:
                    description: 'UserAssignedIdentityExceptions: The pod identity
                      exceptions to allow.'
                    items:
                      properties:
                        name:
                          description: 'Name: The name of the pod identity exception.'
                          type: string
                        namespace:
                          description: 'Namespace: The namespace of the pod identity
                            exception.'
                          type: string
                        podLabels:
                          additionalProperties:
                            type: string
                          description: 'PodLabels: The pod labels to match.'
                          type: object
                      required:
                      - name
                      - namespace
                      - podLabels
                      type: object
                    type: array
                type: object
              powerState:
                description: 'PowerState: The Power State of the cluster.'
                properties:
                  code:
                    description: 'Code: Tells whether the cluster is Running or Stopped'
                    type: string
                type: object
              privateFQDN:
                description: 'PrivateFQDN: The FQDN of private cluster.'
                type: string
              privateLinkResources:
                description: 'PrivateLinkResources: Private link resources associated
                  with the cluster.'
                items:
                  properties:
                    groupId:
                      description: 'GroupId: The group ID of the resource.'
                      type: string
                    id:
                      description: 'Id: The ID of the private link resource.'
                      type: string
                    name:
                      description: 'Name: The name of the private link resource.'
                      type: string
                    privateLinkServiceID:
                      description: 'PrivateLinkServiceID: The private link service
                        ID of the resource, this field is exposed only to NRP internally.'
                      type: string
                    requiredMembers:
                      description: 'RequiredMembers: The RequiredMembers of the resource'
                      items:
                        type: string
                      type: array
                    type:
                      description: 'Type: The resource type.'
                      type: string
                  type: object
                type: array
              provisioningState:
                description: 'ProvisioningState: The current provisioning state.'
                type: string
              servicePrincipalProfile:
                description: 'ServicePrincipalProfile: Information about a service
                  principal identity for the cluster to use for manipulating Azure
                  APIs.'
                properties:
                  clientId:
                    description: 'ClientId: The ID for the service principal.'
                    type: string
                  secret:
                    description: 'Secret: The secret password associated with the
                      service principal in plain text.'
                    type: string
                required:
                - clientId
                type: object
              sku:
                description: 'Sku: The managed cluster SKU.'
                properties:
                  name:
                    description: 'Name: The name of a managed cluster SKU.'
                    type: string
                  tier:
                    description: 'Tier: If not specified, the default is ''Free''.
                      See [uptime SLA](https://docs.microsoft.com/azure/aks/uptime-sla)
                      for more details.'
                    type: string
                type: object
              tags:
                additionalProperties:
                  type: string
                description: 'Tags: Resource tags'
                type: object
              type:
                description: 'Type: Resource type'
                type: string
              windowsProfile:
                description: 'WindowsProfile: The profile for Windows VMs in the Managed
                  Cluster.'
                properties:
                  adminPassword:
                    description: 'AdminPassword: Specifies the password of the administrator
                      account. Minimum-length: 8 characters Max-length: 123 characters
                      Complexity requirements: 3 out of 4 conditions below need to
                      be fulfilled Has lower characters Has upper characters Has a
                      digit Has a special character (Regex match [\W_]) Disallowed
                      values: "abc@123", "P@$$w0rd", "P@ssw0rd", "P@ssword123", "Pa$$word",
                      "pass@word1", "Password!", "Password1", "Password22", "iloveyou!"'
                    type: string
                  adminUsername:
                    description: 'AdminUsername: Specifies the name of the administrator
                      account. Restriction: Cannot end in "." Disallowed values: "administrator",
                      "admin", "user", "user1", "test", "user2", "test1", "user3",
                      "admin1", "1", "123", "a", "actuser", "adm", "admin2", "aspnet",
                      "backup", "console", "david", "guest", "john", "owner", "root",
                      "server", "sql", "support", "support_388945a0", "sys", "test2",
                      "test3", "user4", "user5". Minimum-length: 1 character Max-length:
                      20 characters'
                    type: string
                  enableCSIProxy:
                    description: 'EnableCSIProxy: For more details on CSI proxy, see
                      the [CSI proxy GitHub repo](https://github.com/kubernetes-csi/csi-proxy).'
                    type: boolean
                  licenseType:
                    description: 'LicenseType: The license type to use for Windows
                      VMs. See [Azure Hybrid User Benefits](https://azure.microsoft.com/pricing/hybrid-benefit/faq/)
                      for more details.'
                    type: string
                required:
                - adminUsername
                type: object
            type: object
        type: object
    served: true
    storage: false
    subresources:
      status: {}
  - additionalPrinterColumns:
    - jsonPath: .status.conditions[?(@.type=='Ready')].status
      name: Ready
      type: string
    - jsonPath: .status.conditions[?(@.type=='Ready')].severity
      name: Severity
      type: string
    - jsonPath: .status.conditions[?(@.type=='Ready')].reason
      name: Reason
      type: string
    - jsonPath: .status.conditions[?(@.type=='Ready')].message
      name: Message
      type: string
    name: v1alpha1api20210501storage
    schema:
      openAPIV3Schema:
        description: 'Storage version of v1alpha1api20210501.ManagedCluster Generated
          from: https://schema.management.azure.com/schemas/2021-05-01/Microsoft.ContainerService.json#/resourceDefinitions/managedClusters'
        properties:
          apiVersion:
            description: 'APIVersion defines the versioned schema of this representation
              of an object. Servers should convert recognized schemas to the latest
              internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
            type: string
          kind:
            description: 'Kind is a string value representing the REST resource this
              object represents. Servers may infer this from the endpoint the client
              submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
            type: string
          metadata:
            type: object
          spec:
            description: Storage version of v1alpha1api20210501.ManagedClusters_Spec
            properties:
              $propertyBag:
                additionalProperties:
                  type: string
                description: PropertyBag is an unordered set of stashed information
                  that used for properties not directly supported by storage resources,
                  allowing for full fidelity round trip conversions
                type: object
              aadProfile:
                description: 'Storage version of v1alpha1api20210501.ManagedClusterAADProfile
                  Generated from: https://schema.management.azure.com/schemas/2021-05-01/Microsoft.ContainerService.json#/definitions/ManagedClusterAADProfile'
                properties:
                  $propertyBag:
                    additionalProperties:
                      type: string
                    description: PropertyBag is an unordered set of stashed information
                      that used for properties not directly supported by storage resources,
                      allowing for full fidelity round trip conversions
                    type: object
                  adminGroupObjectIDs:
                    items:
                      type: string
                    type: array
                  clientAppID:
                    type: string
                  enableAzureRBAC:
                    type: boolean
                  managed:
                    type: boolean
                  serverAppID:
                    type: string
                  serverAppSecret:
                    type: string
                  tenantID:
                    type: string
                type: object
              addonProfiles:
                additionalProperties:
                  description: 'Storage version of v1alpha1api20210501.ManagedClusterAddonProfile
                    Generated from: https://schema.management.azure.com/schemas/2021-05-01/Microsoft.ContainerService.json#/definitions/ManagedClusterAddonProfile'
                  properties:
                    $propertyBag:
                      additionalProperties:
                        type: string
                      description: PropertyBag is an unordered set of stashed information
                        that used for properties not directly supported by storage
                        resources, allowing for full fidelity round trip conversions
                      type: object
                    config:
                      additionalProperties:
                        type: string
                      type: object
                    enabled:
                      type: boolean
                  type: object
                type: object
              agentPoolProfiles:
                items:
                  description: 'Storage version of v1alpha1api20210501.ManagedClusterAgentPoolProfile
                    Generated from: https://schema.management.azure.com/schemas/2021-05-01/Microsoft.ContainerService.json#/definitions/ManagedClusterAgentPoolProfile'
                  properties:
                    $propertyBag:
                      additionalProperties:
                        type: string
                      description: PropertyBag is an unordered set of stashed information
                        that used for properties not directly supported by storage
                        resources, allowing for full fidelity round trip conversions
                      type: object
                    availabilityZones:
                      items:
                        type: string
                      type: array
                    count:
                      type: integer
                    enableAutoScaling:
                      type: boolean
                    enableEncryptionAtHost:
                      type: boolean
                    enableFIPS:
                      type: boolean
                    enableNodePublicIP:
                      type: boolean
                    enableUltraSSD:
                      type: boolean
                    gpuInstanceProfile:
                      type: string
                    kubeletConfig:
                      description: 'Storage version of v1alpha1api20210501.KubeletConfig
                        Generated from: https://schema.management.azure.com/schemas/2021-05-01/Microsoft.ContainerService.json#/definitions/KubeletConfig'
                      properties:
                        $propertyBag:
                          additionalProperties:
                            type: string
                          description: PropertyBag is an unordered set of stashed
                            information that used for properties not directly supported
                            by storage resources, allowing for full fidelity round
                            trip conversions
                          type: object
                        allowedUnsafeSysctls:
                          items:
                            type: string
                          type: array
                        containerLogMaxFiles:
                          type: integer
                        containerLogMaxSizeMB:
                          type: integer
                        cpuCfsQuota:
                          type: boolean
                        cpuCfsQuotaPeriod:
                          type: string
                        cpuManagerPolicy:
                          type: string
                        failSwapOn:
                          type: boolean
                        imageGcHighThreshold:
                          type: integer
                        imageGcLowThreshold:
                          type: integer
                        podMaxPids:
                          type: integer
                        topologyManagerPolicy:
                          type: string
                      type: object
                    kubeletDiskType:
                      type: string
                    linuxOSConfig:
                      description: 'Storage version of v1alpha1api20210501.LinuxOSConfig
                        Generated from: https://schema.management.azure.com/schemas/2021-05-01/Microsoft.ContainerService.json#/definitions/LinuxOSConfig'
                      properties:
                        $propertyBag:
                          additionalProperties:
                            type: string
                          description: PropertyBag is an unordered set of stashed
                            information that used for properties not directly supported
                            by storage resources, allowing for full fidelity round
                            trip conversions
                          type: object
                        swapFileSizeMB:
                          type: integer
                        sysctls:
                          description: 'Storage version of v1alpha1api20210501.SysctlConfig
                            Generated from: https://schema.management.azure.com/schemas/2021-05-01/Microsoft.ContainerService.json#/definitions/SysctlConfig'
                          properties:
                            $propertyBag:
                              additionalProperties:
                                type: string
                              description: PropertyBag is an unordered set of stashed
                                information that used for properties not directly
                                supported by storage resources, allowing for full
                                fidelity round trip conversions
                              type: object
                            fsAioMaxNr:
                              type: integer
                            fsFileMax:
                              type: integer
                            fsInotifyMaxUserWatches:
                              type: integer
                            fsNrOpen:
                              type: integer
                            kernelThreadsMax:
                              type: integer
                            netCoreNetdevMaxBacklog:
                              type: integer
                            netCoreOptmemMax:
                              type: integer
                            netCoreRmemDefault:
                              type: integer
                            netCoreRmemMax:
                              type: integer
                            netCoreSomaxconn:
                              type: integer
                            netCoreWmemDefault:
                              type: integer
                            netCoreWmemMax:
                              type: integer
                            netIpv4IpLocalPortRange:
                              type: string
                            netIpv4NeighDefaultGcThresh1:
                              type: integer
                            netIpv4NeighDefaultGcThresh2:
                              type: integer
                            netIpv4NeighDefaultGcThresh3:
                              type: integer
                            netIpv4TcpFinTimeout:
                              type: integer
                            netIpv4TcpKeepaliveProbes:
                              type: integer
                            netIpv4TcpKeepaliveTime:
                              type: integer
                            netIpv4TcpMaxSynBacklog:
                              type: integer
                            netIpv4TcpMaxTwBuckets:
                              type: integer
                            netIpv4TcpTwReuse:
                              type: boolean
                            netIpv4TcpkeepaliveIntvl:
                              type: integer
                            netNetfilterNfConntrackBuckets:
                              type: integer
                            netNetfilterNfConntrackMax:
                              type: integer
                            vmMaxMapCount:
                              type: integer
                            vmSwappiness:
                              type: integer
                            vmVfsCachePressure:
                              type: integer
                          type: object
                        transparentHugePageDefrag:
                          type: string
                        transparentHugePageEnabled:
                          type: string
                      type: object
                    maxCount:
                      type: integer
                    maxPods:
                      type: integer
                    minCount:
                      type: integer
                    mode:
                      type: string
                    name:
                      type: string
                    nodeLabels:
                      additionalProperties:
                        type: string
                      type: object
                    nodePublicIPPrefixIDReference:
                      description: 'NodePublicIPPrefixIDReference: This is of the
                        form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIPPrefixName}'
                      properties:
                        armId:
                          description: 'TODO: The below regex may be overly restrictive
                            ARMID is a string of the form /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}.
                            The /resourcegroups/{resourceGroupName} bit is optional
                            as some resources are scoped at the subscription level
                            ARMID is mutually exclusive with Group, Kind, Namespace
                            and Name.'
                          pattern: (?i)^/subscriptions/([^/]+)(/resourcegroups/([^/]+))?/providers/([^/]+)/([^/]+/[^/]+)(/([^/]+/[^/]+))*$
                          type: string
                        group:
                          description: Group is the Kubernetes group of the resource.
                          type: string
                        kind:
                          description: Kind is the Kubernetes kind of the resource.
                          type: string
                        name:
                          description: Name is the Kubernetes name of the resource.
                          type: string
                      type: object
                    nodeTaints:
                      items:
                        type: string
                      type: array
                    orchestratorVersion:
                      type: string
                    osDiskSizeGB:
                      type: integer
                    osDiskType:
                      type: string
                    osSKU:
                      type: string
                    osType:
                      type: string
                    podSubnetIDReference:
                      description: 'PodSubnetIDReference: If omitted, pod IPs are
                        statically assigned on the node subnet (see vnetSubnetID for
                        more details). This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}'
                      properties:
                        armId:
                          description: 'TODO: The below regex may be overly restrictive
                            ARMID is a string of the form /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}.
                            The /resourcegroups/{resourceGroupName} bit is optional
                            as some resources are scoped at the subscription level
                            ARMID is mutually exclusive with Group, Kind, Namespace
                            and Name.'
                          pattern: (?i)^/subscriptions/([^/]+)(/resourcegroups/([^/]+))?/providers/([^/]+)/([^/]+/[^/]+)(/([^/]+/[^/]+))*$
                          type: string
                        group:
                          description: Group is the Kubernetes group of the resource.
                          type: string
                        kind:
                          description: Kind is the Kubernetes kind of the resource.
                          type: string
                        name:
                          description: Name is the Kubernetes name of the resource.
                          type: string
                      type: object
                    proximityPlacementGroupID:
                      type: string
                    scaleSetEvictionPolicy:
                      type: string
                    scaleSetPriority:
                      type: string
                    spotMaxPrice:
                      type: number
                    tags:
                      additionalProperties:
                        type: string
                      type: object
                    type:
                      type: string
                    upgradeSettings:
                      description: 'Storage version of v1alpha1api20210501.AgentPoolUpgradeSettings
                        Generated from: https://schema.management.azure.com/schemas/2021-05-01/Microsoft.ContainerService.json#/definitions/AgentPoolUpgradeSettings'
                      properties:
                        $propertyBag:
                          additionalProperties:
                            type: string
                          description: PropertyBag is an unordered set of stashed
                            information that used for properties not directly supported
                            by storage resources, allowing for full fidelity round
                            trip conversions
                          type: object
                        maxSurge:
                          type: string
                      type: object
                    vmSize:
                      type: string
                    vnetSubnetIDReference:
                      description: 'VnetSubnetIDReference: If this is not specified,
                        a VNET and subnet will be generated and used. If no podSubnetID
                        is specified, this applies to nodes and pods, otherwise it
                        applies to just nodes. This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}'
                      properties:
                        armId:
                          description: 'TODO: The below regex may be overly restrictive
                            ARMID is a string of the form /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}.
                            The /resourcegroups/{resourceGroupName} bit is optional
                            as some resources are scoped at the subscription level
                            ARMID is mutually exclusive with Group, Kind, Namespace
                            and Name.'
                          pattern: (?i)^/subscriptions/([^/]+)(/resourcegroups/([^/]+))?/providers/([^/]+)/([^/]+/[^/]+)(/([^/]+/[^/]+))*$
                          type: string
                        group:
                          description: Group is the Kubernetes group of the resource.
                          type: string
                        kind:
                          description: Kind is the Kubernetes kind of the resource.
                          type: string
                        name:
                          description: Name is the Kubernetes name of the resource.
                          type: string
                      type: object
                  type: object
                type: array
              apiServerAccessProfile:
                description: 'Storage version of v1alpha1api20210501.ManagedClusterAPIServerAccessProfile
                  Generated from: https://schema.management.azure.com/schemas/2021-05-01/Microsoft.ContainerService.json#/definitions/ManagedClusterAPIServerAccessProfile'
                properties:
                  $propertyBag:
                    additionalProperties:
                      type: string
                    description: PropertyBag is an unordered set of stashed information
                      that used for properties not directly supported by storage resources,
                      allowing for full fidelity round trip conversions
                    type: object
                  authorizedIPRanges:
                    items:
                      type: string
                    type: array
                  enablePrivateCluster:
                    type: boolean
                  enablePrivateClusterPublicFQDN:
                    type: boolean
                  privateDNSZone:
                    type: string
                type: object
              autoScalerProfile:
                description: 'Storage version of v1alpha1api20210501.ManagedClusterPropertiesAutoScalerProfile
                  Generated from: https://schema.management.azure.com/schemas/2021-05-01/Microsoft.ContainerService.json#/definitions/ManagedClusterPropertiesAutoScalerProfile'
                properties:
                  $propertyBag:
                    additionalProperties:
                      type: string
                    description: PropertyBag is an unordered set of stashed information
                      that used for properties not directly supported by storage resources,
                      allowing for full fidelity round trip conversions
                    type: object
                  balance-similar-node-groups:
                    type: string
                  expander:
                    type: string
                  max-empty-bulk-delete:
                    type: string
                  max-graceful-termination-sec:
                    type: string
                  max-node-provision-time:
                    type: string
                  max-total-unready-percentage:
                    type: string
                  new-pod-scale-up-delay:
                    type: string
                  ok-total-unready-count:
                    type: string
                  scale-down-delay-after-add:
                    type: string
                  scale-down-delay-after-delete:
                    type: string
                  scale-down-delay-after-failure:
                    type: string
                  scale-down-unneeded-time:
                    type: string
                  scale-down-unready-time:
                    type: string
                  scale-down-utilization-threshold:
                    type: string
                  scan-interval:
                    type: string
                  skip-nodes-with-local-storage:
                    type: string
                  skip-nodes-with-system-pods:
                    type: string
                type: object
              autoUpgradeProfile:
                description: 'Storage version of v1alpha1api20210501.ManagedClusterAutoUpgradeProfile
                  Generated from: https://schema.management.azure.com/schemas/2021-05-01/Microsoft.ContainerService.json#/definitions/ManagedClusterAutoUpgradeProfile'
                properties:
                  $propertyBag:
                    additionalProperties:
                      type: string
                    description: PropertyBag is an unordered set of stashed information
                      that used for properties not directly supported by storage resources,
                      allowing for full fidelity round trip conversions
                    type: object
                  upgradeChannel:
                    type: string
                type: object
              azureName:
                description: 'AzureName: The name of the resource in Azure. This is
                  often the same as the name of the resource in Kubernetes but it
                  doesn''t have to be.'
                maxLength: 63
                minLength: 1
                pattern: ^[a-zA-Z0-9]$|^[a-zA-Z0-9][-_a-zA-Z0-9]{0,61}[a-zA-Z0-9]$
                type: string
              disableLocalAccounts:
                type: boolean
              diskEncryptionSetIDReference:
                description: 'DiskEncryptionSetIDReference: This is of the form: ''/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskEncryptionSets/{encryptionSetName}'''
                properties:
                  armId:
                    description: 'TODO: The below regex may be overly restrictive
                      ARMID is a string of the form /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}.
                      The /resourcegroups/{resourceGroupName} bit is optional as some
                      resources are scoped at the subscription level ARMID is mutually
                      exclusive with Group, Kind, Namespace and Name.'
                    pattern: (?i)^/subscriptions/([^/]+)(/resourcegroups/([^/]+))?/providers/([^/]+)/([^/]+/[^/]+)(/([^/]+/[^/]+))*$
                    type: string
                  group:
                    description: Group is the Kubernetes group of the resource.
                    type: string
                  kind:
                    description: Kind is the Kubernetes kind of the resource.
                    type: string
                  name:
                    description: Name is the Kubernetes name of the resource.
                    type: string
                type: object
              dnsPrefix:
                type: string
              enablePodSecurityPolicy:
                type: boolean
              enableRBAC:
                type: boolean
              extendedLocation:
                description: 'Storage version of v1alpha1api20210501.ExtendedLocation
                  Generated from: https://schema.management.azure.com/schemas/2021-05-01/Microsoft.ContainerService.json#/definitions/ExtendedLocation'
                properties:
                  $propertyBag:
                    additionalProperties:
                      type: string
                    description: PropertyBag is an unordered set of stashed information
                      that used for properties not directly supported by storage resources,
                      allowing for full fidelity round trip conversions
                    type: object
                  name:
                    type: string
                  type:
                    type: string
                type: object
              fqdnSubdomain:
                type: string
              httpProxyConfig:
                description: 'Storage version of v1alpha1api20210501.ManagedClusterHTTPProxyConfig
                  Generated from: https://schema.management.azure.com/schemas/2021-05-01/Microsoft.ContainerService.json#/definitions/ManagedClusterHTTPProxyConfig'
                properties:
                  $propertyBag:
                    additionalProperties:
                      type: string
                    description: PropertyBag is an unordered set of stashed information
                      that used for properties not directly supported by storage resources,
                      allowing for full fidelity round trip conversions
                    type: object
                  httpProxy:
                    type: string
                  httpsProxy:
                    type: string
                  noProxy:
                    items:
                      type: string
                    type: array
                  trustedCa:
                    type: string
                type: object
              identity:
                description: 'Storage version of v1alpha1api20210501.ManagedClusterIdentity
                  Generated from: https://schema.management.azure.com/schemas/2021-05-01/Microsoft.ContainerService.json#/definitions/ManagedClusterIdentity'
                properties:
                  $propertyBag:
                    additionalProperties:
                      type: string
                    description: PropertyBag is an unordered set of stashed information
                      that used for properties not directly supported by storage resources,
                      allowing for full fidelity round trip conversions
                    type: object
                  type:
                    type: string
                  userAssignedIdentities:
                    additionalProperties:
                      x-kubernetes-preserve-unknown-fields: true
                    type: object
                type: object
              identityProfile:
                additionalProperties:
                  description: 'Storage version of v1alpha1api20210501.Componentsqit0Etschemasmanagedclusterpropertiespropertiesidentityprofileadditionalproperties
                    Generated from: https://schema.management.azure.com/schemas/2021-05-01/Microsoft.ContainerService.json#/definitions/Componentsqit0etschemasmanagedclusterpropertiespropertiesidentityprofileadditionalproperties'
                  properties:
                    $propertyBag:
                      additionalProperties:
                        type: string
                      description: PropertyBag is an unordered set of stashed information
                        that used for properties not directly supported by storage
                        resources, allowing for full fidelity round trip conversions
                      type: object
                    clientId:
                      type: string
                    objectId:
                      type: string
                    resourceReference:
                      description: 'ResourceReference: The resource ID of the user
                        assigned identity.'
                      properties:
                        armId:
                          description: 'TODO: The below regex may be overly restrictive
                            ARMID is a string of the form /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}.
                            The /resourcegroups/{resourceGroupName} bit is optional
                            as some resources are scoped at the subscription level
                            ARMID is mutually exclusive with Group, Kind, Namespace
                            and Name.'
                          pattern: (?i)^/subscriptions/([^/]+)(/resourcegroups/([^/]+))?/providers/([^/]+)/([^/]+/[^/]+)(/([^/]+/[^/]+))*$
                          type: string
                        group:
                          description: Group is the Kubernetes group of the resource.
                          type: string
                        kind:
                          description: Kind is the Kubernetes kind of the resource.
                          type: string
                        name:
                          description: Name is the Kubernetes name of the resource.
                          type: string
                      type: object
                  type: object
                type: object
              kubernetesVersion:
                type: string
              linuxProfile:
                description: 'Storage version of v1alpha1api20210501.ContainerServiceLinuxProfile
                  Generated from: https://schema.management.azure.com/schemas/2021-05-01/Microsoft.ContainerService.json#/definitions/ContainerServiceLinuxProfile'
                properties:
                  $propertyBag:
                    additionalProperties:
                      type: string
                    description: PropertyBag is an unordered set of stashed information
                      that used for properties not directly supported by storage resources,
                      allowing for full fidelity round trip conversions
                    type: object
                  adminUsername:
                    type: string
                  ssh:
                    description: 'Storage version of v1alpha1api20210501.ContainerServiceSshConfiguration
                      Generated from: https://schema.management.azure.com/schemas/2021-05-01/Microsoft.ContainerService.json#/definitions/ContainerServiceSshConfiguration'
                    properties:
                      $propertyBag:
                        additionalProperties:
                          type: string
                        description: PropertyBag is an unordered set of stashed information
                          that used for properties not directly supported by storage
                          resources, allowing for full fidelity round trip conversions
                        type: object
                      publicKeys:
                        items:
                          description: 'Storage version of v1alpha1api20210501.ContainerServiceSshPublicKey
                            Generated from: https://schema.management.azure.com/schemas/2021-05-01/Microsoft.ContainerService.json#/definitions/ContainerServiceSshPublicKey'
                          properties:
                            $propertyBag:
                              additionalProperties:
                                type: string
                              description: PropertyBag is an unordered set of stashed
                                information that used for properties not directly
                                supported by storage resources, allowing for full
                                fidelity round trip conversions
                              type: object
                            keyData:
                              type: string
                          type: object
                        type: array
                    type: object
                type: object
              location:
                type: string
              networkProfile:
                description: 'Storage version of v1alpha1api20210501.ContainerServiceNetworkProfile
                  Generated from: https://schema.management.azure.com/schemas/2021-05-01/Microsoft.ContainerService.json#/definitions/ContainerServiceNetworkProfile'
                properties:
                  $propertyBag:
                    additionalProperties:
                      type: string
                    description: PropertyBag is an unordered set of stashed information
                      that used for properties not directly supported by storage resources,
                      allowing for full fidelity round trip conversions
                    type: object
                  dnsServiceIP:
                    type: string
                  dockerBridgeCidr:
                    type: string
                  loadBalancerProfile:
                    description: 'Storage version of v1alpha1api20210501.ManagedClusterLoadBalancerProfile
                      Generated from: https://schema.management.azure.com/schemas/2021-05-01/Microsoft.ContainerService.json#/definitions/ManagedClusterLoadBalancerProfile'
                    properties:
                      $propertyBag:
                        additionalProperties:
                          type: string
                        description: PropertyBag is an unordered set of stashed information
                          that used for properties not directly supported by storage
                          resources, allowing for full fidelity round trip conversions
                        type: object
                      allocatedOutboundPorts:
                        type: integer
                      effectiveOutboundIPs:
                        items:
                          description: 'Storage version of v1alpha1api20210501.ResourceReference
                            Generated from: https://schema.management.azure.com/schemas/2021-05-01/Microsoft.ContainerService.json#/definitions/ResourceReference'
                          properties:
                            $propertyBag:
                              additionalProperties:
                                type: string
                              description: PropertyBag is an unordered set of stashed
                                information that used for properties not directly
                                supported by storage resources, allowing for full
                                fidelity round trip conversions
                              type: object
                            reference:
                              description: 'Reference: The fully qualified Azure resource
                                id.'
                              properties:
                                armId:
                                  description: 'TODO: The below regex may be overly
                                    restrictive ARMID is a string of the form /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}.
                                    The /resourcegroups/{resourceGroupName} bit is
                                    optional as some resources are scoped at the subscription
                                    level ARMID is mutually exclusive with Group,
                                    Kind, Namespace and Name.'
                                  pattern: (?i)^/subscriptions/([^/]+)(/resourcegroups/([^/]+))?/providers/([^/]+)/([^/]+/[^/]+)(/([^/]+/[^/]+))*$
                                  type: string
                                group:
                                  description: Group is the Kubernetes group of the
                                    resource.
                                  type: string
                                kind:
                                  description: Kind is the Kubernetes kind of the
                                    resource.
                                  type: string
                                name:
                                  description: Name is the Kubernetes name of the
                                    resource.
                                  type: string
                              type: object
                          type: object
                        type: array
                      idleTimeoutInMinutes:
                        type: integer
                      managedOutboundIPs:
                        description: 'Storage version of v1alpha1api20210501.ManagedClusterLoadBalancerProfileManagedOutboundIPs
                          Generated from: https://schema.management.azure.com/schemas/2021-05-01/Microsoft.ContainerService.json#/definitions/ManagedClusterLoadBalancerProfileManagedOutboundIPs'
                        properties:
                          $propertyBag:
                            additionalProperties:
                              type: string
                            description: PropertyBag is an unordered set of stashed
                              information that used for properties not directly supported
                              by storage resources, allowing for full fidelity round
                              trip conversions
                            type: object
                          count:
                            type: integer
                        type: object
                      outboundIPPrefixes:
                        description: 'Storage version of v1alpha1api20210501.ManagedClusterLoadBalancerProfileOutboundIPPrefixes
                          Generated from: https://schema.management.azure.com/schemas/2021-05-01/Microsoft.ContainerService.json#/definitions/ManagedClusterLoadBalancerProfileOutboundIPPrefixes'
                        properties:
                          $propertyBag:
                            additionalProperties:
                              type: string
                            description: PropertyBag is an unordered set of stashed
                              information that used for properties not directly supported
                              by storage resources, allowing for full fidelity round
                              trip conversions
                            type: object
                          publicIPPrefixes:
                            items:
                              description: 'Storage version of v1alpha1api20210501.ResourceReference
                                Generated from: https://schema.management.azure.com/schemas/2021-05-01/Microsoft.ContainerService.json#/definitions/ResourceReference'
                              properties:
                                $propertyBag:
                                  additionalProperties:
                                    type: string
                                  description: PropertyBag is an unordered set of
                                    stashed information that used for properties not
                                    directly supported by storage resources, allowing
                                    for full fidelity round trip conversions
                                  type: object
                                reference:
                                  description: 'Reference: The fully qualified Azure
                                    resource id.'
                                  properties:
                                    armId:
                                      description: 'TODO: The below regex may be overly
                                        restrictive ARMID is a string of the form
                                        /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}.
                                        The /resourcegroups/{resourceGroupName} bit
                                        is optional as some resources are scoped at
                                        the subscription level ARMID is mutually exclusive
                                        with Group, Kind, Namespace and Name.'
                                      pattern: (?i)^/subscriptions/([^/]+)(/resourcegroups/([^/]+))?/providers/([^/]+)/([^/]+/[^/]+)(/([^/]+/[^/]+))*$
                                      type: string
                                    group:
                                      description: Group is the Kubernetes group of
                                        the resource.
                                      type: string
                                    kind:
                                      description: Kind is the Kubernetes kind of
                                        the resource.
                                      type: string
                                    name:
                                      description: Name is the Kubernetes name of
                                        the resource.
                                      type: string
                                  type: object
                              type: object
                            type: array
                        type: object
                      outboundIPs:
                        description: 'Storage version of v1alpha1api20210501.ManagedClusterLoadBalancerProfileOutboundIPs
                          Generated from: https://schema.management.azure.com/schemas/2021-05-01/Microsoft.ContainerService.json#/definitions/ManagedClusterLoadBalancerProfileOutboundIPs'
                        properties:
                          $propertyBag:
                            additionalProperties:
                              type: string
                            description: PropertyBag is an unordered set of stashed
                              information that used for properties not directly supported
                              by storage resources, allowing for full fidelity round
                              trip conversions
                            type: object
                          publicIPs:
                            items:
                              description: 'Storage version of v1alpha1api20210501.ResourceReference
                                Generated from: https://schema.management.azure.com/schemas/2021-05-01/Microsoft.ContainerService.json#/definitions/ResourceReference'
                              properties:
                                $propertyBag:
                                  additionalProperties:
                                    type: string
                                  description: PropertyBag is an unordered set of
                                    stashed information that used for properties not
                                    directly supported by storage resources, allowing
                                    for full fidelity round trip conversions
                                  type: object
                                reference:
                                  description: 'Reference: The fully qualified Azure
                                    resource id.'
                                  properties:
                                    armId:
                                      description: 'TODO: The below regex may be overly
                                        restrictive ARMID is a string of the form
                                        /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}.
                                        The /resourcegroups/{resourceGroupName} bit
                                        is optional as some resources are scoped at
                                        the subscription level ARMID is mutually exclusive
                                        with Group, Kind, Namespace and Name.'
                                      pattern: (?i)^/subscriptions/([^/]+)(/resourcegroups/([^/]+))?/providers/([^/]+)/([^/]+/[^/]+)(/([^/]+/[^/]+))*$
                                      type: string
                                    group:
                                      description: Group is the Kubernetes group of
                                        the resource.
                                      type: string
                                    kind:
                                      description: Kind is the Kubernetes kind of
                                        the resource.
                                      type: string
                                    name:
                                      description: Name is the Kubernetes name of
                                        the resource.
                                      type: string
                                  type: object
                              type: object
                            type: array
                        type: object
                    type: object
                  loadBalancerSku:
                    type: string
                  networkMode:
                    type: string
                  networkPlugin:
                    type: string
                  networkPolicy:
                    type: string
                  outboundType:
                    type: string
                  podCidr:
                    type: string
                  serviceCidr:
                    type: string
                type: object
              nodeResourceGroup:
                type: string
              originalVersion:
                type: string
              owner:
                description: KnownResourceReference is a resource reference to a known
                  type.
                properties:
                  name:
                    description: This is the name of the Kubernetes resource to reference.
                    type: string
                required:
                - name
                type: object
              podIdentityProfile:
                description: 'Storage version of v1alpha1api20210501.ManagedClusterPodIdentityProfile
                  Generated from: https://schema.management.azure.com/schemas/2021-05-01/Microsoft.ContainerService.json#/definitions/ManagedClusterPodIdentityProfile'
                properties:
                  $propertyBag:
                    additionalProperties:
                      type: string
                    description: PropertyBag is an unordered set of stashed information
                      that used for properties not directly supported by storage resources,
                      allowing for full fidelity round trip conversions
                    type: object
                  allowNetworkPluginKubenet:
                    type: boolean
                  enabled:
                    type: boolean
                  userAssignedIdentities:
                    items:
                      description: 'Storage version of v1alpha1api20210501.ManagedClusterPodIdentity
                        Generated from: https://schema.management.azure.com/schemas/2021-05-01/Microsoft.ContainerService.json#/definitions/ManagedClusterPodIdentity'
                      properties:
                        $propertyBag:
                          additionalProperties:
                            type: string
                          description: PropertyBag is an unordered set of stashed
                            information that used for properties not directly supported
                            by storage resources, allowing for full fidelity round
                            trip conversions
                          type: object
                        bindingSelector:
                          type: string
                        identity:
                          description: 'Storage version of v1alpha1api20210501.UserAssignedIdentity
                            Generated from: https://schema.management.azure.com/schemas/2021-05-01/Microsoft.ContainerService.json#/definitions/UserAssignedIdentity'
                          properties:
                            $propertyBag:
                              additionalProperties:
                                type: string
                              description: PropertyBag is an unordered set of stashed
                                information that used for properties not directly
                                supported by storage resources, allowing for full
                                fidelity round trip conversions
                              type: object
                            clientId:
                              type: string
                            objectId:
                              type: string
                            resourceReference:
                              description: 'ResourceReference: The resource ID of
                                the user assigned identity.'
                              properties:
                                armId:
                                  description: 'TODO: The below regex may be overly
                                    restrictive ARMID is a string of the form /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}.
                                    The /resourcegroups/{resourceGroupName} bit is
                                    optional as some resources are scoped at the subscription
                                    level ARMID is mutually exclusive with Group,
                                    Kind, Namespace and Name.'
                                  pattern: (?i)^/subscriptions/([^/]+)(/resourcegroups/([^/]+))?/providers/([^/]+)/([^/]+/[^/]+)(/([^/]+/[^/]+))*$
                                  type: string
                                group:
                                  description: Group is the Kubernetes group of the
                                    resource.
                                  type: string
                                kind:
                                  description: Kind is the Kubernetes kind of the
                                    resource.
                                  type: string
                                name:
                                  description: Name is the Kubernetes name of the
                                    resource.
                                  type: string
                              type: object
                          type: object
                        name:
                          type: string
                        namespace:
                          type: string
                      type: object
                    type: array
                  userAssignedIdentityExceptions:
                    items:
                      description: 'Storage version of v1alpha1api20210501.ManagedClusterPodIdentityException
                        Generated from: https://schema.management.azure.com/schemas/2021-05-01/Microsoft.ContainerService.json#/definitions/ManagedClusterPodIdentityException'
                      properties:
                        $propertyBag:
                          additionalProperties:
                            type: string
                          description: PropertyBag is an unordered set of stashed
                            information that used for properties not directly supported
                            by storage resources, allowing for full fidelity round
                            trip conversions
                          type: object
                        name:
                          type: string
                        namespace:
                          type: string
                        podLabels:
                          additionalProperties:
                            type: string
                          type: object
                      type: object
                    type: array
                type: object
              privateLinkResources:
                items:
                  description: 'Storage version of v1alpha1api20210501.PrivateLinkResource
                    Generated from: https://schema.management.azure.com/schemas/2021-05-01/Microsoft.ContainerService.json#/definitions/PrivateLinkResource'
                  properties:
                    $propertyBag:
                      additionalProperties:
                        type: string
                      description: PropertyBag is an unordered set of stashed information
                        that used for properties not directly supported by storage
                        resources, allowing for full fidelity round trip conversions
                      type: object
                    groupId:
                      type: string
                    name:
                      type: string
                    reference:
                      description: 'Reference: The ID of the private link resource.'
                      properties:
                        armId:
                          description: 'TODO: The below regex may be overly restrictive
                            ARMID is a string of the form /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}.
                            The /resourcegroups/{resourceGroupName} bit is optional
                            as some resources are scoped at the subscription level
                            ARMID is mutually exclusive with Group, Kind, Namespace
                            and Name.'
                          pattern: (?i)^/subscriptions/([^/]+)(/resourcegroups/([^/]+))?/providers/([^/]+)/([^/]+/[^/]+)(/([^/]+/[^/]+))*$
                          type: string
                        group:
                          description: Group is the Kubernetes group of the resource.
                          type: string
                        kind:
                          description: Kind is the Kubernetes kind of the resource.
                          type: string
                        name:
                          description: Name is the Kubernetes name of the resource.
                          type: string
                      type: object
                    requiredMembers:
                      items:
                        type: string
                      type: array
                    type:
                      type: string
                  type: object
                type: array
              servicePrincipalProfile:
                description: 'Storage version of v1alpha1api20210501.ManagedClusterServicePrincipalProfile
                  Generated from: https://schema.management.azure.com/schemas/2021-05-01/Microsoft.ContainerService.json#/definitions/ManagedClusterServicePrincipalProfile'
                properties:
                  $propertyBag:
                    additionalProperties:
                      type: string
                    description: PropertyBag is an unordered set of stashed information
                      that used for properties not directly supported by storage resources,
                      allowing for full fidelity round trip conversions
                    type: object
                  clientId:
                    type: string
                  secret:
                    type: string
                type: object
              sku:
                description: 'Storage version of v1alpha1api20210501.ManagedClusterSKU
                  Generated from: https://schema.management.azure.com/schemas/2021-05-01/Microsoft.ContainerService.json#/definitions/ManagedClusterSKU'
                properties:
                  $propertyBag:
                    additionalProperties:
                      type: string
                    description: PropertyBag is an unordered set of stashed information
                      that used for properties not directly supported by storage resources,
                      allowing for full fidelity round trip conversions
                    type: object
                  name:
                    type: string
                  tier:
                    type: string
                type: object
              tags:
                additionalProperties:
                  type: string
                type: object
              windowsProfile:
                description: 'Storage version of v1alpha1api20210501.ManagedClusterWindowsProfile
                  Generated from: https://schema.management.azure.com/schemas/2021-05-01/Microsoft.ContainerService.json#/definitions/ManagedClusterWindowsProfile'
                properties:
                  $propertyBag:
                    additionalProperties:
                      type: string
                    description: PropertyBag is an unordered set of stashed information
                      that used for properties not directly supported by storage resources,
                      allowing for full fidelity round trip conversions
                    type: object
                  adminPassword:
                    type: string
                  adminUsername:
                    type: string
                  enableCSIProxy:
                    type: boolean
                  licenseType:
                    type: string
                type: object
            required:
            - owner
            type: object
          status:
            description: Storage version of v1alpha1api20210501.ManagedCluster_Status
            properties:
              $propertyBag:
                additionalProperties:
                  type: string
                description: PropertyBag is an unordered set of stashed information
                  that used for properties not directly supported by storage resources,
                  allowing for full fidelity round trip conversions
                type: object
              aadProfile:
                description: Storage version of v1alpha1api20210501.ManagedClusterAADProfile_Status
                properties:
                  $propertyBag:
                    additionalProperties:
                      type: string
                    description: PropertyBag is an unordered set of stashed information
                      that used for properties not directly supported by storage resources,
                      allowing for full fidelity round trip conversions
                    type: object
                  adminGroupObjectIDs:
                    items:
                      type: string
                    type: array
                  clientAppID:
                    type: string
                  enableAzureRBAC:
                    type: boolean
                  managed:
                    type: boolean
                  serverAppID:
                    type: string
                  serverAppSecret:
                    type: string
                  tenantID:
                    type: string
                type: object
              addonProfiles:
                x-kubernetes-preserve-unknown-fields: true
              agentPoolProfiles:
                items:
                  description: Storage version of v1alpha1api20210501.ManagedClusterAgentPoolProfile_Status
                  properties:
                    $propertyBag:
                      additionalProperties:
                        type: string
                      description: PropertyBag is an unordered set of stashed information
                        that used for properties not directly supported by storage
                        resources, allowing for full fidelity round trip conversions
                      type: object
                    availabilityZones:
                      items:
                        type: string
                      type: array
                    count:
                      type: integer
                    enableAutoScaling:
                      type: boolean
                    enableEncryptionAtHost:
                      type: boolean
                    enableFIPS:
                      type: boolean
                    enableNodePublicIP:
                      type: boolean
                    enableUltraSSD:
                      type: boolean
                    gpuInstanceProfile:
                      type: string
                    kubeletConfig:
                      description: Storage version of v1alpha1api20210501.KubeletConfig_Status
                      properties:
                        $propertyBag:
                          additionalProperties:
                            type: string
                          description: PropertyBag is an unordered set of stashed
                            information that used for properties not directly supported
                            by storage resources, allowing for full fidelity round
                            trip conversions
                          type: object
                        allowedUnsafeSysctls:
                          items:
                            type: string
                          type: array
                        containerLogMaxFiles:
                          type: integer
                        containerLogMaxSizeMB:
                          type: integer
                        cpuCfsQuota:
                          type: boolean
                        cpuCfsQuotaPeriod:
                          type: string
                        cpuManagerPolicy:
                          type: string
                        failSwapOn:
                          type: boolean
                        imageGcHighThreshold:
                          type: integer
                        imageGcLowThreshold:
                          type: integer
                        podMaxPids:
                          type: integer
                        topologyManagerPolicy:
                          type: string
                      type: object
                    kubeletDiskType:
                      type: string
                    linuxOSConfig:
                      description: Storage version of v1alpha1api20210501.LinuxOSConfig_Status
                      properties:
                        $propertyBag:
                          additionalProperties:
                            type: string
                          description: PropertyBag is an unordered set of stashed
                            information that used for properties not directly supported
                            by storage resources, allowing for full fidelity round
                            trip conversions
                          type: object
                        swapFileSizeMB:
                          type: integer
                        sysctls:
                          description: Storage version of v1alpha1api20210501.SysctlConfig_Status
                          properties:
                            $propertyBag:
                              additionalProperties:
                                type: string
                              description: PropertyBag is an unordered set of stashed
                                information that used for properties not directly
                                supported by storage resources, allowing for full
                                fidelity round trip conversions
                              type: object
                            fsAioMaxNr:
                              type: integer
                            fsFileMax:
                              type: integer
                            fsInotifyMaxUserWatches:
                              type: integer
                            fsNrOpen:
                              type: integer
                            kernelThreadsMax:
                              type: integer
                            netCoreNetdevMaxBacklog:
                              type: integer
                            netCoreOptmemMax:
                              type: integer
                            netCoreRmemDefault:
                              type: integer
                            netCoreRmemMax:
                              type: integer
                            netCoreSomaxconn:
                              type: integer
                            netCoreWmemDefault:
                              type: integer
                            netCoreWmemMax:
                              type: integer
                            netIpv4IpLocalPortRange:
                              type: string
                            netIpv4NeighDefaultGcThresh1:
                              type: integer
                            netIpv4NeighDefaultGcThresh2:
                              type: integer
                            netIpv4NeighDefaultGcThresh3:
                              type: integer
                            netIpv4TcpFinTimeout:
                              type: integer
                            netIpv4TcpKeepaliveProbes:
                              type: integer
                            netIpv4TcpKeepaliveTime:
                              type: integer
                            netIpv4TcpMaxSynBacklog:
                              type: integer
                            netIpv4TcpMaxTwBuckets:
                              type: integer
                            netIpv4TcpTwReuse:
                              type: boolean
                            netIpv4TcpkeepaliveIntvl:
                              type: integer
                            netNetfilterNfConntrackBuckets:
                              type: integer
                            netNetfilterNfConntrackMax:
                              type: integer
                            vmMaxMapCount:
                              type: integer
                            vmSwappiness:
                              type: integer
                            vmVfsCachePressure:
                              type: integer
                          type: object
                        transparentHugePageDefrag:
                          type: string
                        transparentHugePageEnabled:
                          type: string
                      type: object
                    maxCount:
                      type: integer
                    maxPods:
                      type: integer
                    minCount:
                      type: integer
                    mode:
                      type: string
                    name:
                      type: string
                    nodeImageVersion:
                      type: string
                    nodeLabels:
                      additionalProperties:
                        type: string
                      type: object
                    nodePublicIPPrefixID:
                      type: string
                    nodeTaints:
                      items:
                        type: string
                      type: array
                    orchestratorVersion:
                      type: string
                    osDiskSizeGB:
                      type: integer
                    osDiskType:
                      type: string
                    osSKU:
                      type: string
                    osType:
                      type: string
                    podSubnetID:
                      type: string
                    powerState:
                      description: Storage version of v1alpha1api20210501.PowerState_Status
                      properties:
                        $propertyBag:
                          additionalProperties:
                            type: string
                          description: PropertyBag is an unordered set of stashed
                            information that used for properties not directly supported
                            by storage resources, allowing for full fidelity round
                            trip conversions
                          type: object
                        code:
                          type: string
                      type: object
                    provisioningState:
                      type: string
                    proximityPlacementGroupID:
                      type: string
                    scaleSetEvictionPolicy:
                      type: string
                    scaleSetPriority:
                      type: string
                    spotMaxPrice:
                      type: number
                    tags:
                      additionalProperties:
                        type: string
                      type: object
                    type:
                      type: string
                    upgradeSettings:
                      description: Storage version of v1alpha1api20210501.AgentPoolUpgradeSettings_Status
                      properties:
                        $propertyBag:
                          additionalProperties:
                            type: string
                          description: PropertyBag is an unordered set of stashed
                            information that used for properties not directly supported
                            by storage resources, allowing for full fidelity round
                            trip conversions
                          type: object
                        maxSurge:
                          type: string
                      type: object
                    vmSize:
                      type: string
                    vnetSubnetID:
                      type: string
                  type: object
                type: array
              apiServerAccessProfile:
                description: Storage version of v1alpha1api20210501.ManagedClusterAPIServerAccessProfile_Status
                properties:
                  $propertyBag:
                    additionalProperties:
                      type: string
                    description: PropertyBag is an unordered set of stashed information
                      that used for properties not directly supported by storage resources,
                      allowing for full fidelity round trip conversions
                    type: object
                  authorizedIPRanges:
                    items:
                      type: string
                    type: array
                  enablePrivateCluster:
                    type: boolean
                  enablePrivateClusterPublicFQDN:
                    type: boolean
                  privateDNSZone:
                    type: string
                type: object
              autoScalerProfile:
                description: Storage version of v1alpha1api20210501.ManagedClusterProperties_Status_AutoScalerProfile
                properties:
                  $propertyBag:
                    additionalProperties:
                      type: string
                    description: PropertyBag is an unordered set of stashed information
                      that used for properties not directly supported by storage resources,
                      allowing for full fidelity round trip conversions
                    type: object
                  balance-similar-node-groups:
                    type: string
                  expander:
                    type: string
                  max-empty-bulk-delete:
                    type: string
                  max-graceful-termination-sec:
                    type: string
                  max-node-provision-time:
                    type: string
                  max-total-unready-percentage:
                    type: string
                  new-pod-scale-up-delay:
                    type: string
                  ok-total-unready-count:
                    type: string
                  scale-down-delay-after-add:
                    type: string
                  scale-down-delay-after-delete:
                    type: string
                  scale-down-delay-after-failure:
                    type: string
                  scale-down-unneeded-time:
                    type: string
                  scale-down-unready-time:
                    type: string
                  scale-down-utilization-threshold:
                    type: string
                  scan-interval:
                    type: string
                  skip-nodes-with-local-storage:
                    type: string
                  skip-nodes-with-system-pods:
                    type: string
                type: object
              autoUpgradeProfile:
                description: Storage version of v1alpha1api20210501.ManagedClusterAutoUpgradeProfile_Status
                properties:
                  $propertyBag:
                    additionalProperties:
                      type: string
                    description: PropertyBag is an unordered set of stashed information
                      that used for properties not directly supported by storage resources,
                      allowing for full fidelity round trip conversions
                    type: object
                  upgradeChannel:
                    type: string
                type: object
              azurePortalFQDN:
                type: string
              conditions:
                items:
                  description: Condition defines an extension to status (an observation)
                    of a resource
                  properties:
                    lastTransitionTime:
                      description: LastTransitionTime is the last time the condition
                        transitioned from one status to another.
                      format: date-time
                      type: string
                    message:
                      description: Message is a human readable message indicating
                        details about the transition. This field may be empty.
                      type: string
                    observedGeneration:
                      description: ObservedGeneration is the .metadata.generation
                        that the condition was set based upon. For instance, if .metadata.generation
                        is currently 12, but the .status.condition[x].observedGeneration
                        is 9, the condition is out of date with respect to the current
                        state of the instance.
                      format: int64
                      type: integer
                    reason:
                      description: Reason for the condition's last transition. Reasons
                        are upper CamelCase (PascalCase) with no spaces. A reason
                        is always provided, this field will not be empty.
                      type: string
                    severity:
                      description: Severity with which to treat failures of this type
                        of condition. For conditions which have positive polarity
                        (Status == True is their normal/healthy state), this will
                        be omitted when Status == True For conditions which have negative
                        polarity (Status == False is their normal/healthy state),
                        this will be omitted when Status == False. This is omitted
                        in all cases when Status == Unknown
                      type: string
                    status:
                      description: Status of the condition, one of True, False, or
                        Unknown.
                      type: string
                    type:
                      description: Type of condition.
                      type: string
                  required:
                  - lastTransitionTime
                  - reason
                  - status
                  - type
                  type: object
                type: array
              disableLocalAccounts:
                type: boolean
              diskEncryptionSetID:
                type: string
              dnsPrefix:
                type: string
              enablePodSecurityPolicy:
                type: boolean
              enableRBAC:
                type: boolean
              extendedLocation:
                description: Storage version of v1alpha1api20210501.ExtendedLocation_Status
                properties:
                  $propertyBag:
                    additionalProperties:
                      type: string
                    description: PropertyBag is an unordered set of stashed information
                      that used for properties not directly supported by storage resources,
                      allowing for full fidelity round trip conversions
                    type: object
                  name:
                    type: string
                  type:
                    type: string
                type: object
              fqdn:
                type: string
              fqdnSubdomain:
                type: string
              httpProxyConfig:
                description: Storage version of v1alpha1api20210501.ManagedClusterHTTPProxyConfig_Status
                properties:
                  $propertyBag:
                    additionalProperties:
                      type: string
                    description: PropertyBag is an unordered set of stashed information
                      that used for properties not directly supported by storage resources,
                      allowing for full fidelity round trip conversions
                    type: object
                  httpProxy:
                    type: string
                  httpsProxy:
                    type: string
                  noProxy:
                    items:
                      type: string
                    type: array
                  trustedCa:
                    type: string
                type: object
              id:
                type: string
              identity:
                description: Storage version of v1alpha1api20210501.ManagedClusterIdentity_Status
                properties:
                  $propertyBag:
                    additionalProperties:
                      type: string
                    description: PropertyBag is an unordered set of stashed information
                      that used for properties not directly supported by storage resources,
                      allowing for full fidelity round trip conversions
                    type: object
                  principalId:
                    type: string
                  tenantId:
                    type: string
                  type:
                    type: string
                  userAssignedIdentities:
                    additionalProperties:
                      description: Storage version of v1alpha1api20210501.ManagedClusterIdentity_Status_UserAssignedIdentities
                      properties:
                        $propertyBag:
                          additionalProperties:
                            type: string
                          description: PropertyBag is an unordered set of stashed
                            information that used for properties not directly supported
                            by storage resources, allowing for full fidelity round
                            trip conversions
                          type: object
                        clientId:
                          type: string
                        principalId:
                          type: string
                      type: object
                    type: object
                type: object
              identityProfile:
                x-kubernetes-preserve-unknown-fields: true
              kubernetesVersion:
                type: string
              linuxProfile:
                description: Storage version of v1alpha1api20210501.ContainerServiceLinuxProfile_Status
                properties:
                  $propertyBag:
                    additionalProperties:
                      type: string
                    description: PropertyBag is an unordered set of stashed information
                      that used for properties not directly supported by storage resources,
                      allowing for full fidelity round trip conversions
                    type: object
                  adminUsername:
                    type: string
                  ssh:
                    description: Storage version of v1alpha1api20210501.ContainerServiceSshConfiguration_Status
                    properties:
                      $propertyBag:
                        additionalProperties:
                          type: string
                        description: PropertyBag is an unordered set of stashed information
                          that used for properties not directly supported by storage
                          resources, allowing for full fidelity round trip conversions
                        type: object
                      publicKeys:
                        items:
                          description: Storage version of v1alpha1api20210501.ContainerServiceSshPublicKey_Status
                          properties:
                            $propertyBag:
                              additionalProperties:
                                type: string
                              description: PropertyBag is an unordered set of stashed
                                information that used for properties not directly
                                supported by storage resources, allowing for full
                                fidelity round trip conversions
                              type: object
                            keyData:
                              type: string
                          type: object
                        type: array
                    type: object
                type: object
              location:
                type: string
              maxAgentPools:
                type: integer
              name:
                type: string
              networkProfile:
                description: Storage version of v1alpha1api20210501.ContainerServiceNetworkProfile_Status
                properties:
                  $propertyBag:
                    additionalProperties:
                      type: string
                    description: PropertyBag is an unordered set of stashed information
                      that used for properties not directly supported by storage resources,
                      allowing for full fidelity round trip conversions
                    type: object
                  dnsServiceIP:
                    type: string
                  dockerBridgeCidr:
                    type: string
                  loadBalancerProfile:
                    description: Storage version of v1alpha1api20210501.ManagedClusterLoadBalancerProfile_Status
                    properties:
                      $propertyBag:
                        additionalProperties:
                          type: string
                        description: PropertyBag is an unordered set of stashed information
                          that used for properties not directly supported by storage
                          resources, allowing for full fidelity round trip conversions
                        type: object
                      allocatedOutboundPorts:
                        type: integer
                      effectiveOutboundIPs:
                        items:
                          description: Storage version of v1alpha1api20210501.ResourceReference_Status
                          properties:
                            $propertyBag:
                              additionalProperties:
                                type: string
                              description: PropertyBag is an unordered set of stashed
                                information that used for properties not directly
                                supported by storage resources, allowing for full
                                fidelity round trip conversions
                              type: object
                            id:
                              type: string
                          type: object
                        type: array
                      idleTimeoutInMinutes:
                        type: integer
                      managedOutboundIPs:
                        description: Storage version of v1alpha1api20210501.ManagedClusterLoadBalancerProfile_Status_ManagedOutboundIPs
                        properties:
                          $propertyBag:
                            additionalProperties:
                              type: string
                            description: PropertyBag is an unordered set of stashed
                              information that used for properties not directly supported
                              by storage resources, allowing for full fidelity round
                              trip conversions
                            type: object
                          count:
                            type: integer
                        type: object
                      outboundIPPrefixes:
                        description: Storage version of v1alpha1api20210501.ManagedClusterLoadBalancerProfile_Status_OutboundIPPrefixes
                        properties:
                          $propertyBag:
                            additionalProperties:
                              type: string
                            description: PropertyBag is an unordered set of stashed
                              information that used for properties not directly supported
                              by storage resources, allowing for full fidelity round
                              trip conversions
                            type: object
                          publicIPPrefixes:
                            items:
                              description: Storage version of v1alpha1api20210501.ResourceReference_Status
                              properties:
                                $propertyBag:
                                  additionalProperties:
                                    type: string
                                  description: PropertyBag is an unordered set of
                                    stashed information that used for properties not
                                    directly supported by storage resources, allowing
                                    for full fidelity round trip conversions
                                  type: object
                                id:
                                  type: string
                              type: object
                            type: array
                        type: object
                      outboundIPs:
                        description: Storage version of v1alpha1api20210501.ManagedClusterLoadBalancerProfile_Status_OutboundIPs
                        properties:
                          $propertyBag:
                            additionalProperties:
                              type: string
                            description: PropertyBag is an unordered set of stashed
                              information that used for properties not directly supported
                              by storage resources, allowing for full fidelity round
                              trip conversions
                            type: object
                          publicIPs:
                            items:
                              description: Storage version of v1alpha1api20210501.ResourceReference_Status
                              properties:
                                $propertyBag:
                                  additionalProperties:
                                    type: string
                                  description: PropertyBag is an unordered set of
                                    stashed information that used for properties not
                                    directly supported by storage resources, allowing
                                    for full fidelity round trip conversions
                                  type: object
                                id:
                                  type: string
                              type: object
                            type: array
                        type: object
                    type: object
                  loadBalancerSku:
                    type: string
                  networkMode:
                    type: string
                  networkPlugin:
                    type: string
                  networkPolicy:
                    type: string
                  outboundType:
                    type: string
                  podCidr:
                    type: string
                  serviceCidr:
                    type: string
                type: object
              nodeResourceGroup:
                type: string
              podIdentityProfile:
                description: Storage version of v1alpha1api20210501.ManagedClusterPodIdentityProfile_Status
                properties:
                  $propertyBag:
                    additionalProperties:
                      type: string
                    description: PropertyBag is an unordered set of stashed information
                      that used for properties not directly supported by storage resources,
                      allowing for full fidelity round trip conversions
                    type: object
                  allowNetworkPluginKubenet:
                    type: boolean
                  enabled:
                    type: boolean
                  userAssignedIdentities:
                    items:
                      description: Storage version of v1alpha1api20210501.ManagedClusterPodIdentity_Status
                      properties:
                        $propertyBag:
                          additionalProperties:
                            type: string
                          description: PropertyBag is an unordered set of stashed
                            information that used for properties not directly supported
                            by storage resources, allowing for full fidelity round
                            trip conversions
                          type: object
                        bindingSelector:
                          type: string
                        identity:
                          description: Storage version of v1alpha1api20210501.UserAssignedIdentity_Status
                          properties:
                            $propertyBag:
                              additionalProperties:
                                type: string
                              description: PropertyBag is an unordered set of stashed
                                information that used for properties not directly
                                supported by storage resources, allowing for full
                                fidelity round trip conversions
                              type: object
                            clientId:
                              type: string
                            objectId:
                              type: string
                            resourceId:
                              type: string
                          type: object
                        name:
                          type: string
                        namespace:
                          type: string
                        provisioningInfo:
                          description: Storage version of v1alpha1api20210501.ManagedClusterPodIdentity_Status_ProvisioningInfo
                          properties:
                            $propertyBag:
                              additionalProperties:
                                type: string
                              description: PropertyBag is an unordered set of stashed
                                information that used for properties not directly
                                supported by storage resources, allowing for full
                                fidelity round trip conversions
                              type: object
                            error:
                              description: Storage version of v1alpha1api20210501.ManagedClusterPodIdentityProvisioningError_Status
                              properties:
                                $propertyBag:
                                  additionalProperties:
                                    type: string
                                  description: PropertyBag is an unordered set of
                                    stashed information that used for properties not
                                    directly supported by storage resources, allowing
                                    for full fidelity round trip conversions
                                  type: object
                                error:
                                  description: Storage version of v1alpha1api20210501.ManagedClusterPodIdentityProvisioningErrorBody_Status
                                  properties:
                                    $propertyBag:
                                      additionalProperties:
                                        type: string
                                      description: PropertyBag is an unordered set
                                        of stashed information that used for properties
                                        not directly supported by storage resources,
                                        allowing for full fidelity round trip conversions
                                      type: object
                                    code:
                                      type: string
                                    details:
                                      items:
                                        description: Storage version of v1alpha1api20210501.ManagedClusterPodIdentityProvisioningErrorBody_Status_Unrolled
                                        properties:
                                          $propertyBag:
                                            additionalProperties:
                                              type: string
                                            description: PropertyBag is an unordered
                                              set of stashed information that used
                                              for properties not directly supported
                                              by storage resources, allowing for full
                                              fidelity round trip conversions
                                            type: object
                                          code:
                                            type: string
                                          message:
                                            type: string
                                          target:
                                            type: string
                                        type: object
                                      type: array
                                    message:
                                      type: string
                                    target:
                                      type: string
                                  type: object
                              type: object
                          type: object
                        provisioningState:
                          type: string
                      type: object
                    type: array
                  userAssignedIdentityExceptions:
                    items:
                      description: Storage version of v1alpha1api20210501.ManagedClusterPodIdentityException_Status
                      properties:
                        $propertyBag:
                          additionalProperties:
                            type: string
                          description: PropertyBag is an unordered set of stashed
                            information that used for properties not directly supported
                            by storage resources, allowing for full fidelity round
                            trip conversions
                          type: object
                        name:
                          type: string
                        namespace:
                          type: string
                        podLabels:
                          additionalProperties:
                            type: string
                          type: object
                      type: object
                    type: array
                type: object
              powerState:
                description: Storage version of v1alpha1api20210501.PowerState_Status
                properties:
                  $propertyBag:
                    additionalProperties:
                      type: string
                    description: PropertyBag is an unordered set of stashed information
                      that used for properties not directly supported by storage resources,
                      allowing for full fidelity round trip conversions
                    type: object
                  code:
                    type: string
                type: object
              privateFQDN:
                type: string
              privateLinkResources:
                items:
                  description: Storage version of v1alpha1api20210501.PrivateLinkResource_Status
                  properties:
                    $propertyBag:
                      additionalProperties:
                        type: string
                      description: PropertyBag is an unordered set of stashed information
                        that used for properties not directly supported by storage
                        resources, allowing for full fidelity round trip conversions
                      type: object
                    groupId:
                      type: string
                    id:
                      type: string
                    name:
                      type: string
                    privateLinkServiceID:
                      type: string
                    requiredMembers:
                      items:
                        type: string
                      type: array
                    type:
                      type: string
                  type: object
                type: array
              provisioningState:
                type: string
              servicePrincipalProfile:
                description: Storage version of v1alpha1api20210501.ManagedClusterServicePrincipalProfile_Status
                properties:
                  $propertyBag:
                    additionalProperties:
                      type: string
                    description: PropertyBag is an unordered set of stashed information
                      that used for properties not directly supported by storage resources,
                      allowing for full fidelity round trip conversions
                    type: object
                  clientId:
                    type: string
                  secret:
                    type: string
                type: object
              sku:
                description: Storage version of v1alpha1api20210501.ManagedClusterSKU_Status
                properties:
                  $propertyBag:
                    additionalProperties:
                      type: string
                    description: PropertyBag is an unordered set of stashed information
                      that used for properties not directly supported by storage resources,
                      allowing for full fidelity round trip conversions
                    type: object
                  name:
                    type: string
                  tier:
                    type: string
                type: object
              tags:
                additionalProperties:
                  type: string
                type: object
              type:
                type: string
              windowsProfile:
                description: Storage version of v1alpha1api20210501.ManagedClusterWindowsProfile_Status
                properties:
                  $propertyBag:
                    additionalProperties:
                      type: string
                    description: PropertyBag is an unordered set of stashed information
                      that used for properties not directly supported by storage resources,
                      allowing for full fidelity round trip conversions
                    type: object
                  adminPassword:
                    type: string
                  adminUsername:
                    type: string
                  enableCSIProxy:
                    type: boolean
                  licenseType:
                    type: string
                type: object
            type: object
        type: object
    served: true
    storage: true
    subresources:
      status: {}
status:
  acceptedNames:
    kind: ""
    plural: ""
  conditions: []
  storedVersions: []
