|
| 1 | +// Copyright (c) Microsoft Corporation. All rights reserved. |
| 2 | +// Licensed under the MIT License. |
| 3 | + |
| 4 | +#nullable disable |
| 5 | + |
| 6 | +using System; |
| 7 | +using System.Collections.Generic; |
| 8 | +using System.ComponentModel; |
| 9 | +using System.Linq; |
| 10 | +using Azure.Core; |
| 11 | +using Azure.ResourceManager.Models; |
| 12 | + |
| 13 | +namespace Azure.ResourceManager.ContainerService.Models |
| 14 | +{ |
| 15 | + /// <summary> Model factory for models. </summary> |
| 16 | + public static partial class ArmContainerServiceModelFactory |
| 17 | + { |
| 18 | + /// <summary> Initializes a new instance of <see cref="ContainerService.OSOptionProfileData"/>. </summary> |
| 19 | + /// <param name="id"> The id. </param> |
| 20 | + /// <param name="name"> The name. </param> |
| 21 | + /// <param name="resourceType"> The resourceType. </param> |
| 22 | + /// <param name="systemData"> The systemData. </param> |
| 23 | + /// <param name="osOptionPropertyList"> The list of OS options. </param> |
| 24 | + /// <returns> A new <see cref="ContainerService.OSOptionProfileData"/> instance for mocking. </returns> |
| 25 | + [Obsolete("This function is obsolete and will be removed in a future release", false)] |
| 26 | + [EditorBrowsable(EditorBrowsableState.Never)] |
| 27 | + public static OSOptionProfileData OSOptionProfileData(ResourceIdentifier id, string name, ResourceType resourceType, SystemData systemData, IEnumerable<ContainerServiceOSOptionProperty> osOptionPropertyList) |
| 28 | + { |
| 29 | + osOptionPropertyList ??= new List<ContainerServiceOSOptionProperty>(); |
| 30 | + |
| 31 | + return new OSOptionProfileData( |
| 32 | + id, |
| 33 | + name, |
| 34 | + resourceType, |
| 35 | + systemData, |
| 36 | + osOptionPropertyList?.ToList(), |
| 37 | + serializedAdditionalRawData: null); |
| 38 | + } |
| 39 | + |
| 40 | + /// <summary> Initializes a new instance of <see cref="ContainerService.ContainerServiceManagedClusterData"/>. </summary> |
| 41 | + /// <param name="id"> The id. </param> |
| 42 | + /// <param name="name"> The name. </param> |
| 43 | + /// <param name="resourceType"> The resourceType. </param> |
| 44 | + /// <param name="systemData"> The systemData. </param> |
| 45 | + /// <param name="tags"> The tags. </param> |
| 46 | + /// <param name="location"> The location. </param> |
| 47 | + /// <param name="sku"> The managed cluster SKU. </param> |
| 48 | + /// <param name="extendedLocation"> The extended location of the Virtual Machine. </param> |
| 49 | + /// <param name="clusterIdentity"> The identity of the managed cluster, if configured. </param> |
| 50 | + /// <param name="provisioningState"> The current provisioning state. </param> |
| 51 | + /// <param name="powerStateCode"> The Power State of the cluster. </param> |
| 52 | + /// <param name="maxAgentPools"> The max number of agent pools for the managed cluster. </param> |
| 53 | + /// <param name="kubernetesVersion"> Both patch version <major.minor.patch> (e.g. 1.20.13) and <major.minor> (e.g. 1.20) are supported. When <major.minor> is specified, the latest supported GA patch version is chosen automatically. Updating the cluster with the same <major.minor> once it has been created (e.g. 1.14.x -> 1.14) will not trigger an upgrade, even if a newer patch version is available. 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. </param> |
| 54 | + /// <param name="currentKubernetesVersion"> If kubernetesVersion was a fully specified version <major.minor.patch>, this field will be exactly equal to it. If kubernetesVersion was <major.minor>, this field will contain the full <major.minor.patch> version being used. </param> |
| 55 | + /// <param name="dnsPrefix"> This cannot be updated once the Managed Cluster has been created. </param> |
| 56 | + /// <param name="fqdnSubdomain"> This cannot be updated once the Managed Cluster has been created. </param> |
| 57 | + /// <param name="fqdn"> The FQDN of the master pool. </param> |
| 58 | + /// <param name="privateFqdn"> The FQDN of private cluster. </param> |
| 59 | + /// <param name="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. </param> |
| 60 | + /// <param name="agentPoolProfiles"> The agent pool properties. </param> |
| 61 | + /// <param name="linuxProfile"> The profile for Linux VMs in the Managed Cluster. </param> |
| 62 | + /// <param name="windowsProfile"> The profile for Windows VMs in the Managed Cluster. </param> |
| 63 | + /// <param name="servicePrincipalProfile"> Information about a service principal identity for the cluster to use for manipulating Azure APIs. </param> |
| 64 | + /// <param name="addonProfiles"> The profile of managed cluster add-on. </param> |
| 65 | + /// <param name="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. </param> |
| 66 | + /// <param name="oidcIssuerProfile"> The OIDC issuer profile of the Managed Cluster. </param> |
| 67 | + /// <param name="nodeResourceGroup"> The name of the resource group containing agent pool nodes. </param> |
| 68 | + /// <param name="enableRbac"> Whether to enable Kubernetes Role-Based Access Control. </param> |
| 69 | + /// <param name="supportPlan"> The support plan for the Managed Cluster. If unspecified, the default is 'KubernetesOfficial'. </param> |
| 70 | + /// <param name="enablePodSecurityPolicy"> (DEPRECATED) Whether to enable Kubernetes pod security policy (preview). PodSecurityPolicy was deprecated in Kubernetes v1.21, and removed from Kubernetes in v1.25. Learn more at https://aka.ms/k8s/psp and https://aka.ms/aks/psp. </param> |
| 71 | + /// <param name="networkProfile"> The network configuration profile. </param> |
| 72 | + /// <param name="aadProfile"> The Azure Active Directory configuration. </param> |
| 73 | + /// <param name="autoUpgradeProfile"> The auto upgrade configuration. </param> |
| 74 | + /// <param name="upgradeOverrideSettings"> Settings for upgrading a cluster. </param> |
| 75 | + /// <param name="autoScalerProfile"> Parameters to be applied to the cluster-autoscaler when enabled. </param> |
| 76 | + /// <param name="apiServerAccessProfile"> The access profile for managed cluster API server. </param> |
| 77 | + /// <param name="diskEncryptionSetId"> This is of the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskEncryptionSets/{encryptionSetName}'. </param> |
| 78 | + /// <param name="identityProfile"> Identities associated with the cluster. </param> |
| 79 | + /// <param name="privateLinkResources"> Private link resources associated with the cluster. </param> |
| 80 | + /// <param name="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). </param> |
| 81 | + /// <param name="httpProxyConfig"> Configurations for provisioning the cluster with HTTP proxy servers. </param> |
| 82 | + /// <param name="securityProfile"> Security profile for the managed cluster. </param> |
| 83 | + /// <param name="storageProfile"> Storage profile for the managed cluster. </param> |
| 84 | + /// <param name="publicNetworkAccess"> Allow or deny public network access for AKS. </param> |
| 85 | + /// <param name="workloadAutoScalerProfile"> Workload Auto-scaler profile for the managed cluster. </param> |
| 86 | + /// <param name="azureMonitorMetrics"> Azure Monitor addon profiles for monitoring the managed cluster. </param> |
| 87 | + /// <param name="serviceMeshProfile"> Service mesh profile for a managed cluster. </param> |
| 88 | + /// <param name="resourceId"> The resourceUID uniquely identifies ManagedClusters that reuse ARM ResourceIds (i.e: create, delete, create sequence). </param> |
| 89 | + /// <returns> A new <see cref="ContainerService.ContainerServiceManagedClusterData"/> instance for mocking. </returns> |
| 90 | + [EditorBrowsable(EditorBrowsableState.Never)] |
| 91 | + public static ContainerServiceManagedClusterData ContainerServiceManagedClusterData(ResourceIdentifier id, string name, ResourceType resourceType, Azure.ResourceManager.Models.SystemData systemData, IDictionary<string, string> tags, AzureLocation location, ManagedClusterSku sku, Azure.ResourceManager.Resources.Models.ExtendedLocation extendedLocation = null, ManagedClusterIdentity clusterIdentity = null, string provisioningState = null, ContainerServiceStateCode? powerStateCode = null, int? maxAgentPools = null, string kubernetesVersion = null, string currentKubernetesVersion = null, string dnsPrefix = null, string fqdnSubdomain = null, string fqdn = null, string privateFqdn = null, string azurePortalFqdn = null, IEnumerable<ManagedClusterAgentPoolProfile> agentPoolProfiles = null, ContainerServiceLinuxProfile linuxProfile = null, ManagedClusterWindowsProfile windowsProfile = null, ManagedClusterServicePrincipalProfile servicePrincipalProfile = null, IDictionary<string, ManagedClusterAddonProfile> addonProfiles = null, ManagedClusterPodIdentityProfile podIdentityProfile = null, ManagedClusterOidcIssuerProfile oidcIssuerProfile = null, string nodeResourceGroup = null, bool? enableRbac = null, KubernetesSupportPlan? supportPlan = null, bool? enablePodSecurityPolicy = null, ContainerServiceNetworkProfile networkProfile = null, ManagedClusterAadProfile aadProfile = null, ManagedClusterAutoUpgradeProfile autoUpgradeProfile = null, UpgradeOverrideSettings upgradeOverrideSettings = null, ManagedClusterAutoScalerProfile autoScalerProfile = null, ManagedClusterApiServerAccessProfile apiServerAccessProfile = null, ResourceIdentifier diskEncryptionSetId = null, IDictionary<string, ContainerServiceUserAssignedIdentity> identityProfile = null, IEnumerable<ContainerServicePrivateLinkResourceData> privateLinkResources = null, bool? disableLocalAccounts = null, ManagedClusterHttpProxyConfig httpProxyConfig = null, ManagedClusterSecurityProfile securityProfile = null, ManagedClusterStorageProfile storageProfile = null, ContainerServicePublicNetworkAccess? publicNetworkAccess = null, ManagedClusterWorkloadAutoScalerProfile workloadAutoScalerProfile = null, ManagedClusterMonitorProfileMetrics azureMonitorMetrics = null, ServiceMeshProfile serviceMeshProfile = null, ResourceIdentifier resourceId = null) |
| 92 | + => ContainerServiceManagedClusterData(id, name, resourceType, systemData, tags, location, null, sku, extendedLocation, clusterIdentity, null, provisioningState, powerStateCode, maxAgentPools, kubernetesVersion, currentKubernetesVersion, dnsPrefix, fqdnSubdomain, fqdn, privateFqdn, azurePortalFqdn, agentPoolProfiles, linuxProfile, windowsProfile, servicePrincipalProfile, addonProfiles, podIdentityProfile, oidcIssuerProfile, nodeResourceGroup, null, enableRbac, supportPlan, networkProfile, aadProfile, autoUpgradeProfile, upgradeOverrideSettings, autoScalerProfile, apiServerAccessProfile, diskEncryptionSetId, identityProfile, privateLinkResources, disableLocalAccounts, httpProxyConfig, securityProfile, storageProfile, null, publicNetworkAccess, workloadAutoScalerProfile, azureMonitorMetrics, serviceMeshProfile, resourceId, null, null, null, null, null); |
| 93 | + |
| 94 | + /// <summary> Initializes a new instance of <see cref="Models.ContainerServiceOSOptionProperty"/>. </summary> |
| 95 | + /// <param name="osType"> The OS type. </param> |
| 96 | + /// <param name="enableFipsImage"> Whether the image is FIPS-enabled. </param> |
| 97 | + /// <returns> A new <see cref="Models.ContainerServiceOSOptionProperty"/> instance for mocking. </returns> |
| 98 | + [Obsolete("This function is obsolete and will be removed in a future release", false)] |
| 99 | + [EditorBrowsable(EditorBrowsableState.Never)] |
| 100 | + public static ContainerServiceOSOptionProperty ContainerServiceOSOptionProperty(string osType = null, bool enableFipsImage = default) |
| 101 | + { |
| 102 | + return new ContainerServiceOSOptionProperty(osType, enableFipsImage, serializedAdditionalRawData: null); |
| 103 | + } |
| 104 | + } |
| 105 | +} |
0 commit comments