Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

This section describes how to publish in Azure including Azure oath authentication, and distribution to multiple accounts and/or containers.  

Note

Starting with December 2019 release this configuration is deprecated, though still supported. The Azure publishing configuration should be defined as explained in Data Services Distribution To Multiple Destinations.

This section describes how to publish in Azure.

On this page:

Table of Contents

Publish in Azure

To Publish in Azure:

  1. Specify the default Azure publishing configuration in dynamic/pyrules/custom/env.py as a get_default_azure_def() function. For example:

    Code Block
    languagepy
    themeConfluence
    titleAzure Connection Configuration
    def get_default_azure_def():
        return """{"account":"eagleaccount","key":"BASE64ENCODEDAPPKEY=="}"""
    
    


  2. Add a get_default_azure_container_name() function to dynamic/pyrules/custom/env.py to define the default container name.

    Code Block
    languagepy
    themeConfluence
    titleDefault Azure Container Name Definition
    def get_default_azure_container_name():
        return 'eagleml'
    
    


  3. Optional.  Add a get_default_azure_target_dir() function to dynamic/pyrules/custom/env.py to define the target virtual directory in the container. The directory should be without trailing and leading back slashes:

    Code Block
    languagepy
    themeConfluence
    titleDefault Azure Container virtual directory Path Definition
    def get_default_azure_target_dir():
        return 'dropdir/eagleml'
    
    


  4. Optional.  Add get_azure_timeout() function to dynamic/pyrules/custom/env.py.to define timeout for publishing to Azure.The timeout parameter is expressed in seconds.


    Code Block
    languagepy
    themeConfluence
    titleTimeout Definition
    def get_azure_timeout():
        return 600


  5. In order for the result of the extract to be delivered, define to Azure the following parameter in the RTR:

    Code Block
    languagexml
    themeConfluence
    titleTask Parameter - Azure Delivery
    <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:

Code Block
languagepy
themeConfluence
titleAzure Connection Configuration
def get_default_azure_def():
    return """{"account":"eagleaccount","application_id":"application-id","application_secret":"BASE64ENCODEDAPPSECRET==","tenant_id":"tenant-id"}"""

Distribution to multiple accounts/containers

You can distribute to multiple accounts/containers.
To distribute to multiple accounts/containers:

  1. To distribute to multiple accounts, the configuration string should be an array.In the example below the target_dir is optional.

    Code Block
    languagejs
    themeConfluence
    titleConfiguration Example - Push To Multiple Containers
    [
        {"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"}
    ]



  2. If the extract has to be distributed to more than one container within same account, you can specify an array of containers.

    Code Block
    languagejs
    themeConfluence
    titleConfiguration Example - Push To Several Containers, Same Account
    [
        {"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"},
                 ]
         }
    ]

On this page:

toc