
    P                        d Z ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddl	m
Z
 g dZd	d
dddidZ e ee
j                  j!                                eej!                               z         Zd Z ej&                  ej(                  j*                        ej,                   G d de
j.                                      Z ej&                  ej(                  j0                        ej,                   G d de
j2                                      Z ej&                  ej(                  j4                        ej,                   G d de
j6                                      Zy)zCreate-auto cluster command.    )absolute_import)division)unicode_literals)base)flags)create)/argsclusterversion
masterauthnodeidentityprivateclusterauthenticatorsecuritydatabaseencryptionbootdiskkmsautoprovisioning_network_tagsenableworkloadconfigauditenableworkloadvulnscanningenableGoogleCloudAccessprivateEndpointSubnetworkmanagedConfigfleetProjectenableFleetenableSecurityPosture)autoprovisioningEnableKubeletReadonlyPortdataplanev2obsenableK8sBetaApis
compliancecomplianceStandardssecurityPostureworkloadVulnerabilityScanning!enableRuntimeVulnerabilityInsightmasterglobalaccessenableDnsAccessworkloadPoliciescontainerdConfiglabelssecretManagerConfig$enableCiliumClusterwideNetworkPolicycpDiskEncryptionKey!disableL4LbFirewallReconciliation
hpaprofileenableIpAccess)enableAuthorizedNetworksOnPrivateEndpointenableAutoIpamenableK8sTokensViaDnsenableDefaultComputeClassenableK8sCertsViaDnsmembershipTypesecretSyncConfigcontrolPlaneEgresstag_bindingsmanagedOTelScopeautopilotPrivilegedAdmission   TFprivate_clusterN)	num_nodesenable_ip_alias!enable_master_authorized_networksr   c                    t        j                  | d       t        j                  | d       t        j                  | |d       t        j                  |        t        j
                  | d       t        j                  |        t        j                  |        t        j                  |        t        j                  | d       t        j                  |        t        j                  | d       t        j                  | d       t        j                  | d       t        j                  | d       t        j                  | d       t        j                   | d       t        j"                  |        t        j$                  | d       t        j&                  |        t        j(                  |        t        j*                  |        t        j,                  | d       y)z'Adds flags that are not same in create.T)release_track	autopilot)r?   F)hiddenN)r   AddLoggingFlagAddMonitoringFlagAddBinauthzFlagsAddWorkloadPoliciesFlagAddReleaseChannelFlagAddEnableBackupRestoreFlag,AddAutoprovisioningResourceManagerTagsCreateAddAdditiveVPCScopeFlagsAddIPAliasRelatedFlagsAddEnableConfidentialNodesFlagAddEnableLustreCSIDriverFlagAddEnableRayOperatorFlagAddEnableRayClusterMonitoringAddEnableRayClusterLoggingAddInsecureRBACBindingFlagsAddEnableMultiNetworkingFlagAddControlPlaneKeysFlagsAddAutoMonitoringScopeFlagsAddClusterTierFlagAddKubecontextOverrideFlag$AddAnonymousAuthenticationConfigFlagAddEnableLegacyLustrePortFlag)parserr>   s     -lib/surface/container/clusters/create_auto.pyAddAutoFlagsrY   `   sR   vt$&$'}M'f5""6*44V<  (v6&&v.$$VE:  6%%fU;""6%8##F59$$VE:  (##F596"""6*,,V4%%fU;    c                   (    e Zd ZdZdZeZed        Zy)Create3Create an Autopilot cluster for running containers.Tc                     t        j                  t         j                  | t        t               t        | t        j                  j                         y N)r   AddFlagsGAauto_flag_defaults
auto_flagsrY   r   ReleaseTrackrW   s    rX   ArgszCreate.Args   s/    
OOFIIv'9:F**--.rZ   N	__name__
__module____qualname____doc__r?   rb   default_flag_valuesstaticmethodrf    rZ   rX   r\   r\   z   s$     <)*/ /rZ   r\   c                   (    e Zd ZdZdZeZed        Zy)
CreateBetar]   Tc                     t        j                  t         j                  | t        t               t        | t        j                  j                         y r_   )r   r`   BETArb   rc   rY   r   rd   re   s    rX   rf   zCreateBeta.Args   s/    
OOFKK);ZH**//0rZ   Nrg   rn   rZ   rX   rp   rp      s$     <)*1 1rZ   rp   c                   (    e Zd ZdZdZeZed        Zy)CreateAlphar]   Tc                     t        j                  t         j                  | t        t               t        | t        j                  j                         y r_   )r   r`   ALPHArb   rc   rY   r   rd   re   s    rX   rf   zCreateAlpha.Args   s/    
OOFLL&*<jI**001rZ   Nrg   rn   rZ   rX   rt   rt      s$     <)*2 2rZ   rt   )rk   
__future__r   r   r   googlecloudsdk.callioper   $googlecloudsdk.command_lib.containerr   surface.container.clustersr   rc   flag_overridesdictlistbase_flag_defaultsitemsrb   rY   ReleaseTracksrd   ra   DefaultUniverseOnlyr\   rr   rp   rv   rt   rn   rZ   rX   <module>r      sR   # &  ' ( 6 -0
j ).4	 	"	"	(	(	*+d>3G3G3I.JJ 
<4 D%%(()	/V]] 	/  *	/ D%%**+	1"" 	1  ,	1 D%%++,	2&$$ 	2  -	2rZ   