
                             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0r " S S\R$                  5      rg)zFCommand for generating Terraform Import script for exported resources.    )absolute_import)division)unicode_literals)base)flags)terraform_utils)log)
properties)progress_tracker)filesEXAMPLESa  
    To generate an import script named `import.sh` and a module file named `modules.tf` based on exported files in `my-dir/`, run:

      $ {command} my-dir/ --output-script-file=import.sh --output-module-file=modules.tf

    To generate an import script with the default `terraform_import_YYYYMMDD-HH-MM-SS.cmd`
    and `gcloud-export-modules.tf` names on Windows, based on exported files in `my-dir/`, run:

      $ {command} my-dir
   c                   2    \ rS rSrSr\r\S 5       rS r	Sr
g)GenerateImport.   z8Generate Terraform import script for exported resources.c                 0    [         R                  " U5        g )N)r   AddTerraformGenerateImportArgs)clsparsers     8lib/surface/resource_config/terraform/generate_import.pyArgsGenerateImport.Args3   s    	((0    c                     UR                   n[        R                  " U5      n[        R                  " UR                  UR
                  5      u  pEU=(       d    [        R                  " 5       nU=(       d    [        R                  " 5       n[        R                  " SSS9   [        R                  " X4U5      u  pgS S S 5        [        R                  R                  SR                  WW5      5        [        R                  " UR                   UR
                  5      u  pU=(       d    [        R"                  nU	=(       d    [        R                  " 5       n	[        R                  " SSS9   [        R$                  " U[&        R(                  R*                  R,                  R/                  SS9X5      u  pS S S 5        [        R                  R                  S	R                  W
W5      5        g ! , (       d  f       GN9= f! , (       d  f       NP= f)
NzGenerating import script.zAborted script generation.)messageaborted_messagez8Successfully generated {} with imports for {} resources.zGenerating terraform modules.zAborted module generation.T)requiredz*Successfully generated {} with {} modules.)
INPUT_PATHr   ParseExportFilesProcessOutputParametersoutput_script_file
output_dirGenerateDefaultScriptFileNamer   GetCWDr   ProgressTrackerGenerateImportScriptr	   statusPrintformatoutput_module_fileTF_MODULES_FILENAMEGenerateModuleFiler
   VALUEScoreprojectGet)selfargs
input_pathimport_datadest_script_filedest_script_diroutput_script_filenamescript_successesdest_module_filedest_module_diroutput_module_filenamemodule_successess               r   RunGenerateImport.Run7   s   J!22:>K )8(O(O)2%' ?+X+X ,%7O		)	)+4
6 2A1U1U
2:.
6
 JJBII"$4	67
 )8(O(O)2%'N?+N+N%7O		)	)/4
6 2A1S1S
z((--559949H
2-.
6 JJAHH 02 3 /
6 
6
6 
6s   !G-+A
G?-
G<?
H N)__name__
__module____qualname____firstlineno____doc___DETAILED_HELPdetailed_helpclassmethodr   r<   __static_attributes__r>   r   r   r   r   .   s!    @ -1 1!r   r   N)rC   
__future__r   r   r   googlecloudsdk.callioper   +googlecloudsdk.command_lib.util.declarativer   r   googlecloudsdk.corer	   r
   googlecloudsdk.core.consoler   googlecloudsdk.core.utilr   rD   DeclarativeCommandr   r>   r   r   <module>rO      sN    M &  ' ) = G # * 8 * 		*T,, *r   