
    $                         S r SSKJr  SSKJr  SSKJr  SSKJr  \R                  \R                  " \R                  R                  \R                  R                  5       " S S\R                  5      5       5       rg)z-Command for creating ZoneVmExtensionPolicies.    )base_classes)base)flagsc                   8    \ rS rSrSrSSS.r\S 5       rS rSr	g)	Create   z1Create a Compute Engine zone VM extension policy.a  
     To create a zone VM extension policy, run:

       $ {command} test-policy-name         --description="test policy"         --extensions=extension1,extension2         --version=extension1=version1,extension2=version2         --config=extension1="config1",extension2="config2"         --inclusion-labels=env=prod         --inclusion-labels=env=preprod,workload=load-test         --priority=1000

      Available extensions:
        ops-agent
        google-cloud-sap-extension
        google-cloud-workload-extension

   )briefEXAMPLESc                     [         R                  " 5       [        l        [        R                  R	                  U SS9  [         R
                  " U 5        g )Ncreate)operation_type)r   MakeZoneVmExtensionPolicyArgr   ZoneVmExtensionPoliciesArgAddArgumentAddExtensionPolicyArgs)parsers    8lib/surface/compute/zone_vm_extension_policies/create.pyArgsCreate.Args3   sA    (-(J(J(LF%
%%11x 2  
  (    c           
         [         R                  " U R                  5       5      nUR                  nUR                  R                  n[
        R                  R                  UUR                  [        R                  " U5      S9n[        R                  " UR                  UR                  UR                  5        [        R                   " UR                  UR"                  5        [        R$                  " XQU5      nUR'                  UR(                  R*                  SUR-                  UR.                  UR0                  US94/5      $ )zRun the create command.

Args:
  args: argparse.Namespace, The arguments to this command.

Returns:
  Response calling the ZoneVmExtensionPoliciesService.Insert API.
)scope_listerInsert)projectzonevmExtensionPolicy)r   ComputeApiHolderReleaseTrackclientmessagesr   r   ResolveAsResource	resourcescompute_flagsGetDefaultScopeListerr   ParseExtensionConfigs
extensionsconfigconfig_from_fileParseExtensionVersionsversionBuildZoneVmExtensionPolicyMakeRequestsapitools_clientzoneVmExtensionPolicies+ComputeZoneVmExtensionPoliciesInsertRequestr   r   )selfargsholderr   r    resource_ref
zve_policys          r   Run
Create.Run;   s    **4+<+<+>?F]]F}}%%H44FF"88@ G L
 
d&;&; 
  $,,?11,hOJ66<< ((""( 	= 	
!    r    N)
__name__
__module____qualname____firstlineno____doc__detailed_helpstaticmethodr   r5   __static_attributes__r7   r   r   r   r      s2     : C-, ) )r   r   N)r<   googlecloudsdk.api_lib.computer   googlecloudsdk.callioper   "googlecloudsdk.command_lib.computer   r#   =googlecloudsdk.command_lib.compute.zone_vm_extension_policiesUniverseCompatibleReleaseTracksr   ALPHABETACreateCommandr   r7   r   r   <module>rI      sk     4 7 ( E O D%%++T->->-C-CD?T ? E ?r   