
    	                         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
 ddlmZ  ej                  ej                  j                        ej                    G d	 d
ej"                                      Zy)z*Command to update zonal instance settings.    )absolute_import)division)unicode_literals)base_classes)base)flags)
propertiesc                   .    e Zd ZdZddiZed        Zd Zy)UpdatezUpdate zonal instance settings.EXAMPLESa0  
        To update the instance settings in the zone called ``us-central1-a''
        in the project ``my-gcp-project'' with service account email ``example@serviceaccount.com'', run:

          $ {command} --service-account=example@serviceaccount.com --zone=us-central1-a --project=my-gcp-project
      c                 .    t        j                  |        y )N)r   AddUpdateInstanceSettingsFlags)parsers    /lib/surface/compute/instance_settings/update.pyArgszUpdate.Args'   s    	((0    c                    t        j                  | j                               }|j                  }|j                  j
                  }|j                  j                  t        j                  j                  j                  j                         |j                        }|j                  |d|fg      d   j                  }|j                  j!                  |j                  j#                  |j$                  |      t        j                  j                  j                  j                         d|j                        }|j                  |d|fgd	      d   S )
N)projectzoneGetr   )emailfingerprintr   )instanceSettingsr   
updateMaskr   PatchT)no_followup)r   ComputeApiHolderReleaseTrackclientapitools_clientr   messages!ComputeInstanceSettingsGetRequestr	   VALUEScorer   	GetOrFailr   MakeRequestsr   #ComputeInstanceSettingsPatchRequestInstanceSettingsservice_account)selfargsholderr   servicerequestr   s          r   Runz
Update.Run+   s;   **4+<+<+>?F]]F$$55Goo??!!&&..88: @ G %%'@&AB	k  ooAA99&&K : 
 !!&&..88:YY B G 
7G	$%   	 	r   N)__name__
__module____qualname____doc__detailed_helpstaticmethodr   r/    r   r   r   r      s/     (  
 - 1 1	r   r   N)r3   
__future__r   r   r   googlecloudsdk.api_lib.computer   googlecloudsdk.callioper   4googlecloudsdk.command_lib.compute.instance_settingsr   googlecloudsdk.corer	   ReleaseTracksr   ALPHAHiddenUpdateCommandr   r6   r   r   <module>r@      se    1 &  ' 7 ( F * D%%++,$	T $	  -$	r   