
    -                        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  \R                  \R                  " \R                  R                   5       " S S\R"                  5      5       5       r\R                  \R                  " \R                  R&                  5       " S	 S
\5      5       5       r\R                  \R                  " \R                  R*                  5       " S S\5      5       5       rg)z"Updates a Cloud NetApp Host Group.    )client)base)flags)labels_util)logc                   8    \ rS rSrSrSSS.r\S 5       rS rSr	g	)
Update   !Update a Cloud NetApp Host Group.zS          Update a Cloud NetApp Host Group and its specified parameters.
          z          The following command updates a Host Group named NAME and its specified parameters:

              $ {command} NAME --location=us-central1 --description="new description" --hosts="host3,host4" --update-labels=key2=val2
          )DESCRIPTIONEXAMPLESc                 0    [         R                  " U 5        g )N)host_groups_flagsAddHostGroupUpdateArgs)parsers    (lib/surface/netapp/host_groups/update.pyArgsUpdate.Args)   s    ,,V4    c                    UR                   R                  R                  5       n[        R                  " U R                  5       5      n[        R                  R                  U5      nUR                  U5      nUR                  5       (       aI  UR                  UR                  R                  R                  UR                  5      R!                  5       nOSnUR#                  UUR$                  UR&                  US9n/ nUR)                  S5      (       a  UR+                  S5        UR)                  S5      (       a  UR+                  S5        UbS  UR)                  S5      (       d,  UR)                  S5      (       d  UR)                  S5      (       a  UR+                  S5        S	R-                  U5      n	UR/                  X'XR0                  5      n
UR0                  (       aq  S
R3                  U R                  5       R4                  UR7                  5       UR8                  5      n[:        R<                  R?                  SR3                  U5      5        U
$ )z8Update a Cloud NetApp Host Group in the current project.N)hostsdescriptionlabelsr   r   update_labelsremove_labelsclear_labelsr   ,z6gcloud {} netapp host-groups describe {} --location {}zDCheck the status of the updated host group by describing it:
  $ {} ) CONCEPTS
host_groupParsehost_groups_clientHostGroupsClientReleaseTrackr   DiffFromUpdateArgsGetHostGroupMayHaveUpdatesApplymessages	HostGroupLabelsValuer   	GetOrNoneParseUpdatedHostGroupConfigr   r   IsSpecifiedappendjoinUpdateHostGroupasync_formatprefixNamelocationsIdr   statusPrint)selfargshost_group_refr   labels_difforiginal_host_groupr   r   updated_fieldsupdate_maskresultcommands               r   Run
Update.Run-   s   ]]--335N001B1B1DEF""11$7K --n= !!##  
//
#
#
/
/1D1K1K	  f33jj$$	 4 J N&&M*  G$))O,,N++H%((>*K##KF {{HOO




$
$





$
$g
 
jj&/ Mr    N)
__name__
__module____qualname____firstlineno____doc__detailed_helpstaticmethodr   rB   __static_attributes__rD   r   r   r	   r	      s1     *		- 5 51r   r	   c                   D    \ rS rSrSr\R                  R                  rSr	g)
UpdateBetaa   r   rD   N)
rE   rF   rG   rH   rI   r   r#   BETA_RELEASE_TRACKrL   rD   r   r   rN   rN   a   s     *$$)).r   rN   c                   D    \ rS rSrSr\R                  R                  rSr	g)UpdateAlphai   r   rD   N)
rE   rF   rG   rH   rI   r   r#   ALPHArQ   rL   rD   r   r   rS   rS   i   s     *$$**.r   rS   N)rI   )googlecloudsdk.api_lib.netapp.host_groupsr   r!   googlecloudsdk.callioper   -googlecloudsdk.command_lib.netapp.host_groupsr   r   $googlecloudsdk.command_lib.util.argsr   googlecloudsdk.corer   DefaultUniverseOnlyReleaseTracksr#   GAUpdateCommandr	   rP   rN   rU   rS   rD   r   r   <module>r_      s     ) R ( T < # D%%(()CT C * CL D%%**+* * , * D%%++,+* + - +r   