
                             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	rS
r " S S\R                  5      rg)>Update a local package with changes from a remote source repo.    )absolute_import)division)unicode_literals)base)anthoscli_backend)flags)logzThe local package directory to update. Can optionally include a git reference  (GIT_REF) to a tag, branch or commit hash to update to. Defaults to last fetched git-ref.zLOCAL_DIR[@GIT_REF]c                   6    \ rS rSrSrSS0r\S 5       rS rSr	g)	Update!   r   EXAMPLESa  
      To update local package `~/my-package-dir`:

        $ {command} ~/my-package-dir

      To update my-package-dir/ to match the v1.3 tag at git URL
      https://github.com/my-other-account/foo.git:

        $ {command} my-package-dir@v1.3 --repo-uri https://github.com/my-other-account/foo.git

      To update by applying a git patch:

        $ git add my-package-dir/
        $ git commit -m "package updates"
        $ {command} my-package-dir/@main --strategy alpha-git-patch
      c                 8   [         R                  " [        [        S9R	                  U 5        [         R
                  " SSSSS9R	                  U 5        [         R                  " 5       R	                  U 5        [         R                  " 5       R	                  U 5        g )N)help_overridemetavarFREPO_URIzUgit repo url for updating contents. Defaults to the url the package was fetched from.)
positionalrequiredr   r   )r	   GetLocalDirFlag_LOCAL_DIR_HELP_LOCAL_DIR_METAAddToParserGetRepoURIFlagGetStrategyFlagGetDryRunFlag)parsers    %lib/surface/anthos/packages/update.pyArgsUpdate.Args6   ss    	"133>;v3F	EE:(78 9DF8K	''/	%%f-    c                    UR                   S:H  n[        R                  " 5       n[        R                  R                  SR                  UR                  5      5        UR                  R                  S5      u  pEnU(       a  UR                  SU/5      OSnU" SUUR                  UR                  UR                  UUR                  [        R                  " 5       US9	nU R                  U5      $ )NdebugzSyncing dir [{}]@.update)	command	local_dirrepo_uristrategydry_runverboseshow_exec_errorenvexecution_dir)	verbosityr   AnthosCliWrapperr
   statusPrintformat	LOCAL_DIR	partitionjoinr   r)   r*   r,   GetEnvArgsForCommand _DefaultOperationResponseHandler)	selfargs
is_verbosecommand_executorwork_dir	at_symbolgit_refpkg_dirresponses	            r   Run
Update.RunA   s    7*J(99;JJ'..t~~>?#'>>#;#;C#@ H07innc7^,SG*1)-)-(,(2040D0D$5$J$J$L.68H 00::r     N)
__name__
__module____qualname____firstlineno____doc__detailed_helpstaticmethodr   rB   __static_attributes__rD   r    r   r   r   !   s-    F 
-& . .;r    r   N)rI   
__future__r   r   r   googlecloudsdk.callioper   !googlecloudsdk.command_lib.anthosr   r	   googlecloudsdk.corer
   r   r   BinaryBackedCommandr   rD   r    r   <module>rR      s@    E &  ' ( ? 3 #7 (0;T%% 0;r    