
    ]                     D   S r SSKJr  SSKJr  SSKJr  SSKJ	r	  SSKJ
r
  SSKJr  SSKJr  S	r\R                  " \R                  R                   5       " S
 S\R"                  5      5       r\R                  " \R                  R&                  5       " S S\5      5       rg)z-Command to create an Anthos cluster on Azure.    )azure)base)resource_args)command_util)	constants)endpoint_util)flagsak  
To create a cluster named ``my-cluster'' managed in location ``us-west1'', run:

$ {command} my-cluster --location=us-west1 --azure-region=AZURE_REGION --cluster-version=CLUSTER_VERSION --client=CLIENT --pod-address-cidr-blocks=POD_ADDRESS_CIDR_BLOCKS --resource-group-id=RESOURCE_GROUP_ID --ssh-public-key=SSH_PUBLIC_KEY --subnet-id=SUBNET_ID --vnet-id=VNET_ID
c                   6    \ rS rSrSrS\0r\S 5       rS r	Sr
g)Create"   "Create an Anthos cluster on Azure.EXAMPLESc                    U R                  SSSS9n[        R                  " X5        [        R                  " U5        [        R
                  " U 5        [        R                  " U 5        [        R                  " U 5        [        R                  " U 5        [        R                  " U 5        [        R                  " U 5        [        R                  " U 5        [        R                  " U 5        [        R                  " U SSS9  [        R                  " U 5        [        R                  " U 5        [        R                   " U 5        [        R"                  " U 5        [        R$                  " U 5        [        R&                  " U S5        [        R(                  " U S5        [        R*                  " U 5        [        R,                  " U 5        [        R.                  " U 5        [        R0                  " U 5        [        R2                  " U 5        [        R4                  " U 5        [        R6                  " U 5        [        R8                  " U 5        [        R:                  " U 5        [        R<                  " U S5        [>        R@                  RC                  U 5        U RD                  RG                  [H        RJ                  5        g )	NzAuthentication configurationT)mutexrequiredzthe cluster control planeF)r   clusterzcreation of the cluster)&add_argument_groupr   $AddAzureClusterAndClientResourceArgsr	   AddAzureServicesAuthenticationAddAzureRegionAddEndpointSubnetId	AddVnetIdAddResourceGroupIdAddServiceLoadBalancerSubnetIdAddPodAddressCidrBlocksAddServiceAddressCidrBlocksAddClusterVersionAddSubnetID	AddVMSizeAddSSHPublicKeyAddRootVolumeSizeAddMainVolumeSizeAddReplicaPlacementsAddTagsAddValidateOnlyAddDatabaseEncryptionAddConfigEncryptionAddProxyConfigAddFleetProjectAddAdminUsersAddAdminGroupsAddDescriptionAddAnnotations
AddLoggingAddMonitoringConfigr   
ASYNC_FLAGAddToParserdisplay_info	AddFormatr   AZURE_CLUSTERS_FORMAT)parserauth_config_groups     .lib/surface/container/azure/clusters/create.pyArgsCreate.Args(   s   11&dT 2  66 
(():;	 	f%	OOF	V$	((0	!!&)	%%f-	F#	f9EJ	OOF	&!	F#	F#	v&	MM&)$	&";<	'	f%	 	&!		 	 	 	V	fd+OO'
!!)"A"AB    c           	         [         R                  " U5      R                  n[        R                  " U5         [         R                  " U5      n[
        R                  " 5       n[        R                  " UR                  S[        R                  UR                  S9n[        R                  " UUUU[        R                  S9sSSS5        $ ! , (       d  f       g= f)zRuns the create command.Creating)actionkindregion)resource_refresource_clientargsmessager>   N)r   ParseAzureClusterResourceArglocationsIdr   GkemulticloudEndpointOverrideapi_utilClustersClientr   ClusterMessageazureClustersIdr   AZUREazure_regionr   AZURE_CLUSTER_KIND)selfrB   locationcluster_refcluster_clientrC   s         r7   Run
Create.RunN   s    99$?KKH		4	4X	>!>>tDk..0n++

%
%""	g   "(++ 
?	>	>s   B
C
C N)__name__
__module____qualname____firstlineno____doc__	_EXAMPLESdetailed_helpstaticmethodr8   rR   __static_attributes__rT   r:   r7   r   r   "   s)    *y)-#C #CJr:   r   c                   V    \ rS rSrSr\\R                  R                  4S j5       r	Sr
g)CreateAlphac   r   c                 .    [         R                  U 5        g)z-Registers alpha track flags for this command.N)r   r8   )r5   tracks     r7   r8   CreateAlpha.Argsg   s     KKr:   rT   N)rU   rV   rW   rX   rY   r\   r   ReleaseTrackALPHAr8   r]   rT   r:   r7   r_   r_   c   s&    ***00  r:   r_   N)rY   .googlecloudsdk.api_lib.container.gkemulticloudr   rG   googlecloudsdk.callioper   *googlecloudsdk.command_lib.container.azurer   2googlecloudsdk.command_lib.container.gkemulticloudr   r   r   r	   rZ   ReleaseTracksrd   GACreateCommandr   re   r_   rT   r:   r7   <module>rm      s    4 M ( D K H L D	 D%%(()=T = *=@ D%%++,&  -r:   