Specify the default Azure publishing configuration in dynamic/pyrules/custom/env.py as a get_default_azure_def() function. For example:
def get_default_azure_def(): return """{"account":"eagleaccount","key":"BASE64ENCODEDAPPKEY=="}"""
To define the default container name, add a get_default_azure_container_name() function to dynamic/pyrules/custom/env.py:
def get_default_azure_container_name(): return 'eagleml'
*Optional. To define target virtual directory in container, add a get_default_azure_target_dir() function to dynamic/pyrules/custom/env.py. The directory should be without trailing and leading back slashes:
def get_default_azure_target_dir(): return 'dropdir/eagleml'
*Optional. To define timeout for publishing to Azure, add get_azure_timeout() function to dynamic/pyrules/custom/env.py. The timeout parameter is expressed in seconds.
def get_azure_timeout(): return 600
In order for the result of the extract to be delivered, define to Azure the following parameter in the RTR:
<taskParameter> <name>TargetSinkType</name> <value>azureblob</value> </taskParameter>
Azure Oauth Authentication
Specify the default Azure publishing configuration in dynamic/pyrules/custom/env.py as a get_default_azure_def() function. For example:
def get_default_azure_def(): return """{"account":"eagleaccount","application_id":"application-id","application_secret":"BASE64ENCODEDAPPSECRET==","tenant_id":"tenant-id"}"""
Distributing to multiple accounts/containers
To distribute to multiple accounts, the configuration string can be an array:
[ {"account":"eagleaccount1","application_id":"application-id1","application_secret":"BASE64ENCODEDAPPSECRET==","tenant_id":"tenant-id", "container_name": "container1", "target_dir": "mydropbox"}, {"account":"eagleaccount2","application_id":"application-id2","application_secret":"BASE64ENCODEDAPPSECRET==","tenant_id":"tenant-id", "container_name": "container2", "target_dir": "mydropbox"} ]
In the above example the target_dir is optional.
If the extract has to be distributed to more than one container within same account, you can specify an array of containers:
[ {"account":"eagleaccount1","application_id":"application-id1","application_secret":"BASE64ENCODEDAPPSECRET==","tenant_id":"tenant-id", "containers" : [ {"container_name": "container1", "target_dir": "mydropbox1"}, {"container_name": "container2", "target_dir": "mydropbox2"}, ] } ]