
    5                        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 dd	lmZ e	j"                   e	j$                  e	j&                  j(                         G d
 de	j*                                      Ze	j"                   e	j$                  e	j&                  j.                         G d de                    Zy)zDelete a secret.    )absolute_import)division)unicode_literals)api)base)args)log)
console_ioc                   *    e Zd ZdZdZed        Zd Zy)Deleteah  Delete a secret.

  Delete a secret and destroy all secret versions. This action is irreversible.
  If the given secret does not exist, this command will succeed, but the
  operation will be a no-op.

  ## EXAMPLES

  Delete a secret `my-secret`:

    $ {command} my-secret

  Delete a secret `my-secret` using an etag:

    $ {command} my-secret --etag=123
  zsYou are about to destroy the secret [{secret}] and its [{num_versions}] version(s). This action cannot be reversed.c                     t        j                  | ddd       t        j                  | dd       t        j                  | d       y 	Nz	to deleteT)purpose
positionalrequiredzto delete secretF)r   hiddendeleted)actionsecrets_args	AddSecretAddLocationAddSecretEtagparsers    lib/surface/secrets/delete.pyArgszDelete.Args4   >    t V-?Nvi8    c                    t        j                  | j                               }t        j                  |      }|j                  j
                  j                         }t        j                  |      j                  |d|j                        }d}|D ]5  }|j                  |j                  j                  j                  k7  s1|dz  }7 | j                  j                  |j!                         |      }t#        j$                  |dd	       t        j&                  |      j)                  ||j*                  |j                  
      }	t-        j&                         j/                  |       |	S N)version)api_versioni'  )
secret_reflimitsecret_locationr      )secretnum_versionsT)throw_if_unattendedcancel_on_no)etagr&   secrets_apiGetApiFromTrackReleaseTrackGetMessagesCONCEPTSr(   ParseVersionsListWithPagerlocationstateSecretVersionStateValueValuesEnum	DESTROYEDCONFIRM_DELETE_MESSAGEformatNamer
   PromptContinueSecretsr   r,   secrets_logDeleted
selfr   r#   messagesr$   versionsactive_version_countr"   msgresults
             r   Runz
Delete.Run<   s8   --d.?.?.ABK&&{;H%%++-J ##<JJT4== K H 	(00EEOO	O!  
%
%
,
, /C - C ct$O  [9@@DMM A F !!*-Mr   N)__name__
__module____qualname____doc__r;   staticmethodr   rI    r   r   r   r      s*    $4  9 9r   r   c                   &    e Zd ZdZed        Zd Zy)
DeleteBetaae  Delete a secret.

  Delete a secret and destroy all secret versions. This action is irreversible.
  If the given secret does not exist, this command will succeed, but the
  operation will be a no-op.

  ## EXAMPLES

  Delete a secret `my-secret`:

    $ {command} my-secret

  Delete a secret `my-secret` using etag:

    $ {command} my-secret --etag=123
  c                     t        j                  | ddd       t        j                  | dd       t        j                  | d       y r   r   r   s    r   r   zDeleteBeta.Argsj   r   r   c                    t        j                  | j                               }t        j                  |      }|j                  j
                  j                         }t        j                  |      j                  |d|j                        }d}|D ]5  }|j                  |j                  j                  j                  k7  s1|dz  }7 | j                  j                  |j!                         |      }t#        j$                  |dd	       t        j&                  |      j)                  ||j*                  |j                  
      }	t-        j&                         j/                  |       |	S r!   r-   rB   s
             r   rI   zDeleteBeta.Runr   s6   --d.?.?.ABK&&{;H%%++-J##<JJT4== K H 	(00EEOO	O!  
%
%
,
, /C - C ct$O  [9@@DMM A F !!*-Mr   N)rJ   rK   rL   rM   rN   r   rI   rO   r   r   rQ   rQ   V   s     " 9 9r   rQ   N)rM   
__future__r   r   r   googlecloudsdk.api_lib.secretsr   r.   googlecloudsdk.callioper   "googlecloudsdk.command_lib.secretsr   r   r	   r@   googlecloudsdk.core.consoler
   DefaultUniverseOnlyReleaseTracksr0   GADeleteCommandr   BETArQ   rO   r   r   <module>r^      s     &  ' = ( C A 2 D%%(()5T 5 * 5p D%%**+0 0 , 0r   