
                             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  \
R$                   " S S\
R&                  5      5       rg)z Command to create transfer jobs.    )absolute_import)division)unicode_literals)operations_util)apis)base)storage_url)jobs_apitools_util)jobs_flag_util)logc                   8    \ rS rSrSrSSS.r\S 5       rS rSr	g	)
Create   z'Create a Transfer Service transfer job.z      Create a Transfer Service transfer job, allowing you to transfer data to
      Google Cloud Storage on a one-time or recurring basis.
      a        To create a one-time, immediate transfer job to move data from Google
      Cloud Storage bucket "foo" into the "baz" folder in Cloud Storage bucket
      "bar", run:

        $ {command} gs://foo gs://bar/baz/

      To create a transfer job to move data from an Amazon S3 bucket called
      "foo" to a Google Cloud Storage bucket named "bar" that runs every day
      with custom name "my-test-job", run:

        $ {command} s3://foo gs://bar --name=my-test-job --source-creds-file=/examplefolder/creds.txt --schedule-repeats-every=1d

      To create a one-time, immediate transfer job to move data between Google
      Cloud Storage buckets "foo" and "bar" with filters to include objects that
      start with prefixes "baz" and "qux"; and objects modified in the 24 hours
      before the transfer started, run:

        $ {command} gs://foo gs://bar/ --include-prefixes=baz,qux --include-modified-after-relative=1d

      To create a one-time, immediate transfer job to move data from a directory
      with absolute path "/foo/bar/" in the filesystem associated with
      agent pool "my-pool" into Google Cloud Storage bucket "example-bucket",
      run:

        $ {command} posix:///foo/bar/ gs://example-bucket --source-agent-pool=my-pool
      )DESCRIPTIONEXAMPLESc                 H    [         R                  " XR                  5       S9  g )N)release_track)r   setup_parserReleaseTrack)clsparsers     #lib/surface/transfer/jobs/create.pyArgsCreate.ArgsH   s    6F6F6HI    c                    UR                   R                  [        R                  R                  R
                  5      nUR                   R                  [        R                  R                  R
                  5      nUR                  R                  [        R                  R                  R
                  5      nU(       d  U(       a  UR                  (       d  [        S5      eU(       a  UR                  (       d  [        S5      eU(       a#  U(       a  UR                  (       d  [        S5      e[        R                  " SS5      n[        R                  " SS5      nUR                  R!                  ["        R$                  " X5      5      nUR&                  (       aV  [(        R*                  R-                  SR/                  UR0                  5      5        [2        R4                  " UR0                  S9  U$ )Nz8Missing agent pool. Please add --source-agent-pool flag.z=Missing agent pool. Please add --destination-agent-pool flag.zOMissing intermediate storage path. Please add --intermediate-storage-path flag.transferv1zCreated job: {})job_name)source
startswithr	   ProviderPrefixHDFSvaluePOSIXdestinationsource_agent_pool
ValueErrordestination_agent_poolintermediate_storage_pathr   GetClientInstanceGetMessagesModuletransferJobsr   r
   generate_transfer_job_messageno_asyncr   statusPrintformatnamer   block_until_done)selfargsis_hdfs_sourceis_posix_sourceis_posix_destinationclientmessagesresults           r   Run
Create.RunL   ss   [[++""''--N kk,,""((..O  ++66""((.. 	/43I3I
DF FD$?$?
IK K0** G H H ##J5F%%j$7H  ''88HJF }}	jj(//<=&&<Mr    N)
__name__
__module____qualname____firstlineno____doc__detailed_helpclassmethodr   r=   __static_attributes__r?   r   r   r   r      s2    /



"-J J Jr   r   N)rD   
__future__r   r   r   googlecloudsdk.api_lib.transferr   googlecloudsdk.api_lib.utilr   googlecloudsdk.callioper   "googlecloudsdk.command_lib.storager	   #googlecloudsdk.command_lib.transferr
   r   googlecloudsdk.corer   UniverseCompatibleCommandr   r?   r   r   <module>rQ      sP    ' &  ' ; , ( : B > # LT\\ L Lr   