
    !                     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\	R*                  5      5       rg)z$Inject fault on an AlloyDB instance.    )absolute_import)division)unicode_literals)api_util)instance_operations)base)flags)log)
properties)	resourcesc                   8    \ rS rSrSrSSS.r\S 5       rS rSr	g	)
InjectFault   z;Inject fault on an AlloyDB instance within a given cluster.z{description}z      To Inject fault on an instance, run:

        $ {command} my-instance --cluster=my-cluster --region=us-central1 --fault-type=stop-vm
      )DESCRIPTIONEXAMPLESc                     [         R                  R                  U 5        [        R                  " U S5        [        R
                  " U 5        [        R                  " U 5        [        R                  " U S5        g)zlSpecifies additional command flags.

Args:
  parser: argparse.Parser, Parser object for command line inputs
FTN)r   
ASYNC_FLAGAddToParserr	   
AddClusterAddInstance	AddRegionAddFaultType)parsers    -lib/surface/alloydb/instances/inject_fault.pyArgsInjectFault.Args-   sP     	OO'	VU#	f	OOF	vt$    c                 n   [         R                  " U R                  5       5      nUR                  nUR                  n[
        R                  " U5      R                  UR                  5      nUR                  R                  S[        R                  R                  R                  R                  UR                   UR"                  UR$                  S9nUR'                  UR)                  5       UR+                  US9S9nUR,                  R/                  U5      n[0        R2                  R5                  UR6                  SS9n	[8        R:                  R=                  SR?                  U	RA                  5       5      5        URB                  (       d'  [D        RF                  " U	SU R                  5       S	5        U$ )
zConstructs and sends request.

Args:
  args: argparse.Namespace, An object that contains the values for the
    arguments specified in the .Args() method.

Returns:
  ProcessHttpResponse of the request made.
z-alloydb.projects.locations.clusters.instances)
projectsIdlocationsId
clustersIdinstancesId)	faultType)nameinjectFaultRequestz%alloydb.projects.locations.operations)
collectionzOperation ID: {}zInjecting fault over instanceF)$r   AlloyDBClientReleaseTrackalloydb_clientalloydb_messagesr	   GetInjectFaultTypeFlagMapperGetEnumForChoice
fault_typeresource_parserCreater   VALUEScoreproject	GetOrFailregionclusterinstance;AlloydbProjectsLocationsClustersInstancesInjectFaultRequestRelativeNameInjectFaultRequest%projects_locations_clusters_instancesr   r   REGISTRYParseRelativeNamer$   r
   statusPrintformatNameasync_r   Await)
selfargsclientr)   r*   r-   project_refreqopop_refs
             r   RunInjectFault.Run:   su    ##D$5$5$78F**N..33t'  ((//7$$))11;;KK<<MM 0 K 
V
V%%'+>>  ? 
 W C 
	=	=	I	I#	NB11
C 2 F JJ'..v{{}=>;;
143D3D3F Ir    N)
__name__
__module____qualname____firstlineno____doc__detailed_helpstaticmethodr   rJ   __static_attributes__rL   r   r   r   r      s2     D %
- 
% 
%&r   r   N)rQ   
__future__r   r   r   googlecloudsdk.api_lib.alloydbr   r   googlecloudsdk.callioper   "googlecloudsdk.command_lib.alloydbr	   googlecloudsdk.corer
   r   r   ReleaseTracksr(   ALPHABETAGASilentCommandr   rL   r   r   <module>r_      s    + &  ' 3 > ( 4 # * ) T..33T5F5F5I5I?$$$ ??r   