Skip to content

Instantly share code, notes, and snippets.

@chanakaudaya
Created July 11, 2018 06:39
Show Gist options
  • Save chanakaudaya/58c880514c6a3b4f9f4a741d32b0d5f3 to your computer and use it in GitHub Desktop.
Save chanakaudaya/58c880514c6a3b4f9f4a741d32b0d5f3 to your computer and use it in GitHub Desktop.
This is a sample WSO2 ESB proxy service to move a file from SFTP server to an Amazon S3 bucket
<?xml version="1.0" encoding="UTF-8"?><proxy xmlns="http://ws.apache.org/ns/synapse" name="vfsProxyS3" startOnLoad="true" statistics="disable" trace="disable" transports="vfs">
<target>
<inSequence>
<log level="full">
<property name="log" value="====VFS Proxy S3===="/>
</log>
<property expression="get-property('SYSTEM_TIME')" name="objectName"/>
<property name="contentType" value="text/plain"/>
<amazons3.init>
<accessKeyId>{wso2:vault-lookup('s3accesskey')}</accessKeyId>
<secretAccessKey>{wso2:vault-lookup('s3secretkey')}</secretAccessKey>
<bucketName>csrf-sftp-poc</bucketName>
<isXAmzDate>true</isXAmzDate>
<methodType>PUT</methodType>
<contentType>{$ctx:contentType}</contentType>
<region>us-east-2</region>
<host>s3.us-east-2.amazonaws.com</host>
</amazons3.init>
<amazons3.createObject>
<bucketUrl>https://s3.us-east-2.amazonaws.com/csrf-sftp-poc</bucketUrl>
<objectName>{$ctx:objectName}</objectName>
</amazons3.createObject>
<log level="full"/>
<drop/>
</inSequence>
<outSequence/>
<faultSequence/>
</target>
<parameter name="transport.PollInterval">15</parameter>
<parameter name="transport.vfs.MaxRetryCount">1</parameter>
<parameter name="transport.vfs.FileURI">vfs:sftp://sftpuser:sftppass@localhost/sftpuser/test/in</parameter>
<parameter name="transport.vfs.ContentType">text/plain</parameter>
<parameter name="transport.vfs.ActionAfterProcess">MOVE</parameter>
<parameter name="transport.vfs.MoveAfterFailure">vfs:sftp://sftpuser:sftppass@localhost/sftpuser/test/failed</parameter>
<parameter name="transport.vfs.ActionAfterFailure">MOVE</parameter>
<parameter name="transport.vfs.FileNamePattern">.*.xml</parameter>
<parameter name="transport.vfs.MoveAfterProcess">vfs:sftp://sftpuser:sftppass@localhost/sftpuser/test/out</parameter>
<description/>
</proxy>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment