Modularizing Profiles: include directive
An Example Transfer Profile
A profile definition for Server-to-Server File Transfer, from an SFTP to an FTP server:
[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 file name extension .txt should be transferred from the server wilma via SFTP to the server 8of9 by FTP. the folders are not explicitely specified and therefore the home folder of the user will be selected.
Profile Fragments
To make the profile reusable and more readable it is possible to re-use profile fragments like this:
[wilma] user=kb password=***** ssh_auth_method=password host=wilma.sos protocol=sftp port=22 [8of9] user=test password=***** host=8of9.sos protocol=ftp port=21 [globals] log_filename=${TEMP}/sosftphistory.log
The profiles for wilma and 8of9 are defined just once. They could be used as many time as required in different transfer profiles. There is a globals profile as well.
Define Profiles using the include directive
Now we will specify the transfer profile with fragements:
[ftp_server_2_server] source_include=wilma target_include=8of9 operation=copy file_spec=^.*\.txt$ [ftp_more] target_include=wilma source_include=8of9 operation=move file_spec=^.*\.(txt|pdf|dat)$ source_folder=/outbound/daily target_folder=/inbound/transfer
- The include parameter will include the respective profiles in the order they are defined in. In the first example wilma will be included as source and in the second example as target. The globals profile is included automatically, no need to specifiy it in an include parameter.
- The profiles have to be defined in the same settings file.