
                         P   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S	KJr  SS	KJr  SS
KJr  \R&                  " \R(                  R*                  \R(                  R,                  \R(                  R.                  5       " S S\R0                  5      5       rg)z#Simulate maintenance event command.    )absolute_import)division)unicode_literals)base_classes)poller)waiter)base)flags)logc                   8    \ rS rSrSrSSS.r\S 5       rS rSr	g)	SimulateMaintenanceEvent   z4Simulate maintenance of a Compute Engine node group.z{
         To simulate maintenance of a node group, run:

           $ {command} my-node-group --nodes=example-nodes
       )briefEXAMPLESc                     [         R                  " 5       R                  U 5        [         R                  " U 5        [        R
                  R                  U 5        g )N)r
   MakeNodeGroupArgAddArgument+AddSimulateMaintenanceEventNodesArgToParserr	   
ASYNC_FLAGAddToParser)parsers    Jlib/surface/compute/sole_tenancy/node_groups/simulate_maintenance_event.pyArgsSimulateMaintenanceEvent.Args/   s9    	((0	55f=OO'    c           	      @   [         R                  " U R                  5       5      nUR                  R                  n[
        R                  " 5       R                  UUR                  [        R                  " UR                  5      S9nUR                  UR                  UR                  S9UR                  5       UR                  UR                   S9nUR                  R"                  R$                  nUR'                  U5      nUR                  R)                  UR*                  SS9nUR,                  (       al  [.        R0                  R3                  SR5                  UR                  5       UR7                  5       5      5        [.        R0                  R3                  S5        U$ [8        R:                  " U5      n	SR=                  [?        [@        UR                  =(       d    / 5      5      n
[B        RD                  " XS	R5                  XR                  5       5      5      $ )
N)scope_lister)nodes))nodeGroupsSimulateMaintenanceEventRequest	nodeGroupprojectzonezcompute.zoneOperations)
collectionz@Simulation Maintenance Event in progress for node group [{}]: {}zUUse [gcloud compute operations describe URI] to check the status of the operation(s).,z4Simulation Maintenance Event for nodes [{}] in [{}].)#r   ComputeApiHolderReleaseTrackclientmessagesr
   r   ResolveAsResource	resourcescompute_flagsGetDefaultScopeLister0ComputeNodeGroupsSimulateMaintenanceEventRequest)NodeGroupsSimulateMaintenanceEventRequestr   Namer!   r"   apitools_client
nodeGroupsr   ParseselfLinkasync_r   statusPrintformatSelfLinkr   Pollerjoinmapstrr   WaitFor)selfargsholderr(   node_group_refrequestservice	operationoperation_refoperation_poller	nodes_strs              r   RunSimulateMaintenanceEvent.Run5   s   **4+<+<+>?F}}%%H++-??"88G @ IN
 GG2:	2	2	2	D %%'&&   H "G mm++66G009I$$**'? + AM{{	jj
L6.%%')?)?)ABD 
jj B C}}W-S$**"234I>>>EE**,	./ /r    N)
__name__
__module____qualname____firstlineno____doc__detailed_helpstaticmethodr   rH   __static_attributes__rJ   r   r   r   r      s2     = A		- ( (
 /r   r   N)rO   
__future__r   r   r   googlecloudsdk.api_lib.computer   )googlecloudsdk.api_lib.compute.operationsr   googlecloudsdk.api_lib.utilr   googlecloudsdk.callioper	   "googlecloudsdk.command_lib.computer
   r+   ;googlecloudsdk.command_lib.compute.sole_tenancy.node_groupsgooglecloudsdk.corer   ReleaseTracksr&   ALPHABETAGAUpdateCommandr   rJ   r   r   <module>r`      s    * &  ' 7 < . ( E M # T..33T5F5F5I5I4/t11 4/4/r   