
    D                     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  SS
KJr  \R(                  \R*                  " \R,                  R.                  \R,                  R0                  5       " S S\R2                  5      5       5       rg)Create an on-demand backup.    )absolute_import)division)unicode_literals)
exceptions)util)BackupPlanAssociationsClient)base)flags)logc                   :    \ rS rSrSrSSSS.r\S 5       rS rS	r	g
)TriggerBackup    z*Create an on-demand backup for a resource.r   zD{description} Trigger an on demand backup for the given backup rule.a3          To trigger an on demand backup for a backup plan association `sample-bpa` in project `sample-project` and location `us-central1` with backup rule `sample-backup-rule`, run:

          $ {command} sample-bpa --project=sample-project --location=us-central1 --backup-rule-id=sample-backup-rule
        )BRIEFDESCRIPTIONEXAMPLESc                     [         R                  R                  U 5        [         R                  R                  U S5        [        R
                  " U 5        g)zmSpecifies additional command flags.

Args:
  parser: argparse.Parser: Parser object for command line inputs.
TN)r
   
ASYNC_FLAGAddToParser
SetDefaultr   AddTriggerBackupFlags)parsers    @lib/surface/backup_dr/backup_plan_associations/trigger_backup.pyArgsTriggerBackup.Args1   s8     	OO'OOvt,	'    c           
      $   [        5       nUR                  nUR                  R                  R	                  5       nUR
                  nUR                  nUR                  nU(       a  U(       a  [        R                  " S5      e UR                  XEXg5      nU(       aO  ["        R$                  " SUR'                  5       SS[        R(                  R+                  UR,                  5      SS9  gUR/                  UR1                  U5      SR+                  UR'                  5       5      S9  ["        R$                  " SUR'                  5       SS	SSS
S9  g! [        R                   a*  n	[        R                  " U	[        R                   5      eSn	A	ff = f)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.
zmargument --custom-retention-days: At most one of --backup-rule-id | --custom-retention-days may be specified.Nzon demand backupzbackup plan associationT)kindis_asyncdetailsfailedztOn demand backup in progress [{}]. (This operation usually takes less than 15 minutes but could take up to 8 hours.))operation_refmessageFzon demand backup done for)r   r   r    r!   operation_past_tense)r	   async_CONCEPTSbackup_plan_associationParsebackup_rule_idcustom_retention_dayslabelscalliope_exceptionsMutualExclusionErrorr   apitools_exceptions	HttpErrorr   HttpExceptionr   HTTP_ERROR_FORMATr   _PrintResourceChangeRelativeNameASYNC_OPERATION_MESSAGEformatnameWaitForOperationGetOperationRef)
selfargsclientr   r'   backup_ruler*   r+   	operationes
             r   RunTriggerBackup.Run<   sw    *+F{{H"mmCCIIK%%K 66[[F,447 
@&&
!0Ei
  


!
.
.
0(..55innE 
,,Y7CCI6'446D	   ,,.&8 I (( @$$Q(>(>??@s   E F%%F

F N)
__name__
__module____qualname____firstlineno____doc__detailed_helpstaticmethodr   r?   __static_attributes__rA   r   r   r   r       s5     3 -
P
- ( (@r   r   N)rF   
__future__r   r   r   apitools.base.pyr   r.   googlecloudsdk.api_lib.backupdrr   8googlecloudsdk.api_lib.backupdr.backup_plan_associationsr	   googlecloudsdk.api_lib.utilgooglecloudsdk.callioper
   r,   #googlecloudsdk.command_lib.backupdrr   googlecloudsdk.corer   DefaultUniverseOnlyReleaseTracksReleaseTrackALPHAGACommandr   rA   r   r   <module>rX      s    " '  ' > 0 a 2 ( E 5 # D%%++T->->-A-ABZDLL Z C Zr   