Server-to-Server File Transfer

Schema for Server-to-Server File Transfer without touchdown

  • YADE can make use of different protocols when reading files from a source and writing files to a target system.
  • Any combination of FTP, FTPS, SFTP, HTTP, WebDAV can be used for sources and targets.
  • No touchdown of files on the server where YADE is located, instead all transfer operations are performed in memory.

 

Profile for Server-to-Server File Transfer without touchdown

A profile definition for Server-to-Server File Transfer using SFTP for the source system and FTP for the target system:

 [ftp_server_2_server]
 ssh_auth_method=password
 
 source_user=kb
 source_password=*****
 source_ssh_auth_method=password
 source_host=wilma.sos
 source_protocol=sftp
 source_port=22
 
 target_user=test
 target_password=*****
 target_host=8of9.sos
 target_protocol=ftp
 target_port=21
 
 file_spec=^.*\.txt$
 operation=copy
 
 log_filename=${TEMP}/sosftphistory.log

 

In this example all files with the extension .txt should be transfered from the server wilma via SFTP to the server 8of9 by FTP. The folder is not explicitely specified and therefore the home folder of the user will be chosen.

To start this example with the YADE Client CLI you could type:

 jade.sh -settings=name_of_settings_file -profile=ftp_server_2_server

 

To make the profile reusable and more readable it is possible to organise profile fragments like this:

 [wilma_as_source]
 ssh_auth_method=password
 
 source_user=kb
 source_password=*****
 source_ssh_auth_method=password
 source_host=wilma.sos
 source_protocol=sftp
 source_port=22

 [8of9_as_target]
 target_user=test
 target_password=*****
 target_host=8of9.sos
 target_protocol=ftp
 target_port=21

 [globals]
 log_filename=${TEMP}/sosftphistory.log

 

The profile fragments for wilma as source and 8of9 as target are defined just once. They could be used as many times as needed. There is a globals profile as well.

Now we will specify the profile using fragments:

 [ftp_server_2_server]
 include=wilma_as_source,8of9_as_target
 operation=copy
 file_spec=^.*\.txt$
   
 [ftp_more]
 include=wilma_as_source,8of9_as_target
 operation=move
 file_spec=^.*\.(txt|pdf|dat)$
 source_folder=/outbound/daily
 target_folder=/inbound/transfer

 

The include parameter will include the named profile fragments in the order they are defined. The globals profile is included automatically, no need to specifiy it in an include parameter. The profile fragments have to be defined in the same settings file.

See also