
                             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
  \R                  " \R                  R                  5       " S S	\R                  5      5       rg
)z&Create- and update-deployment command.    )configmanager_util)base)deploy_util)flags)resource_args)concept_parsersc                   6    \ rS rSrSrSS0r\S 5       rS rSr	g)	LockDeployment   zQLocks the deployment.

This command locks the deployment and generates a lockId.
EXAMPLESz
        Lock deployment `my-deployment` under project `p1` and location `us-central1`:

          $ {command} projects/p1/locations/us-central1/deployments/my-deployment

      c                     [         R                  " U 5        [        R                  " [        R
                  " S5      /5      R                  U 5        g )Nz$the deployment to be used as parent.)r   AddAsyncFlagr   ConceptParserr   GetDeploymentResourceArgSpecAddToParser)parsers    -lib/surface/infra_manager/deployments/lock.pyArgsLockDeployment.Args(   s@    	v!!666	
 k&    c                     [         R                  " 5       nUR                  R                  R	                  5       nUR                  5       n[        R                  " UUR                  U5      $ )zThis is what gets called when the user runs this command.

Args:
  args: an argparse namespace. All the arguments that were provided to this
    command invocation.

Returns:
  The statefile containing signed url that can be used to upload state file.
)	r   GetMessagesModuleCONCEPTS
deploymentParseRelativeNamer   r
   async_)selfargsmessagesdeployment_refdeployment_full_names        r   RunLockDeployment.Run4   sY     "335H]]--335N)668%% r    N)
__name__
__module____qualname____firstlineno____doc__detailed_helpstaticmethodr   r#   __static_attributes__r%   r   r   r
   r
      s1    
   
 - 	 	r   r
   N)r*   $googlecloudsdk.api_lib.infra_managerr   googlecloudsdk.callioper   (googlecloudsdk.command_lib.infra_managerr   r   r   (googlecloudsdk.command_lib.util.conceptsr   ReleaseTracksReleaseTrackGACommandr
   r%   r   r   <module>r6      sU    - D ( @ : B D D%%(()+T\\ + *+r   