<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>article Using Azure Functions to trigger Talend Cloud Jobs in Official Support Articles</title>
    <link>https://community.qlik.com/t5/Official-Support-Articles/Using-Azure-Functions-to-trigger-Talend-Cloud-Jobs/ta-p/2151853</link>
    <description>&lt;DIV class="talend-tkb-migrated-content"&gt;&lt;DIV class="lia-message-template-content-zone"&gt; 
 &lt;H1&gt;Overview&lt;/H1&gt; 
 &lt;P&gt;This article explains how to use Azure Functions to trigger a Job managed by the Talend Cloud platform. It explains how to use a trigger on Azure Blob to execute a Job published on Talend Cloud. The Job is designed in Talend Studio and published to the Talend Cloud platform where its execution on the cloud or a remote engine is managed.&lt;/P&gt; 
 &lt;P&gt;&amp;nbsp;&lt;/P&gt; 
 &lt;P&gt;It covers:&lt;/P&gt; 
 &lt;UL&gt;&lt;LI&gt;Publishing a Job to Talend Cloud&lt;/LI&gt;&lt;LI&gt;Creating an Azure function based on a Blob trigger using the JavaScript language&lt;/LI&gt;&lt;LI&gt;Testing the integration end-to-end&lt;/LI&gt;&lt;/UL&gt; 
 &lt;P&gt;&amp;nbsp;&lt;/P&gt; 
 &lt;H1&gt;Architecture&lt;/H1&gt; 
 &lt;P&gt;The diagram shows the technical implementation architecture of the solution described in this article.&lt;/P&gt; 
 &lt;P&gt;&lt;SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" style="width: 999px;"&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="0693p000008uFBPAA2.jpg"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/123989i27992F9D335D979B/image-size/large?v=v2&amp;amp;px=999" role="button" title="0693p000008uFBPAA2.jpg" alt="0693p000008uFBPAA2.jpg" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;/P&gt; 
 &lt;P&gt;&amp;nbsp;&lt;/P&gt; 
 &lt;H1&gt;Prerequisites&lt;/H1&gt; 
 &lt;P&gt;&lt;STRONG&gt;Microsoft Azure&lt;/STRONG&gt;&lt;/P&gt; 
 &lt;UL&gt;&lt;LI&gt;You need access to Microsoft Azure with a valid account (&lt;A href="https://portal.azure.com" target="_blank"&gt;portal.azure.com&lt;/A&gt;).&lt;/LI&gt;&lt;LI&gt;You need full access to Azure services.&lt;/LI&gt;&lt;/UL&gt; 
 &lt;P&gt;&lt;STRONG&gt;Talend&lt;/STRONG&gt;&lt;/P&gt; 
 &lt;UL&gt;&lt;LI&gt;You need to be familiar with Talend Studio and Talend Cloud.&lt;/LI&gt;&lt;LI&gt;You need access to Talend Cloud with a valid account. You can sign up for a free trial account here: &lt;A href="https://iam.us.cloud.talend.com/idp/trial-registration" target="_blank"&gt;https://iam.us.cloud.talend.com/idp/trial-registration&lt;/A&gt;.&lt;/LI&gt;&lt;/UL&gt; 
 &lt;P&gt;&amp;nbsp;&lt;/P&gt; 
 &lt;H1&gt;Create a Job with Talend Studio&lt;/H1&gt; 
 &lt;P&gt;This section explains how to create a new Job and publish it to Talend Cloud.&lt;/P&gt; 
 &lt;P&gt;&amp;nbsp;&lt;/P&gt; 
 &lt;H2&gt;Configure Talend Studio to connect to Talend Cloud&lt;/H2&gt; 
 &lt;P&gt;In Studio:&lt;/P&gt; 
 &lt;OL&gt;&lt;LI&gt;Navigate to &lt;STRONG&gt;Window&lt;/STRONG&gt;&amp;nbsp;&amp;gt; &lt;STRONG&gt;Preferences&lt;/STRONG&gt; &amp;gt; &lt;STRONG&gt;Talend&lt;/STRONG&gt; &amp;gt; &lt;STRONG&gt;Integration&lt;/STRONG&gt; &lt;STRONG&gt;Cloud&lt;/STRONG&gt;.&lt;/LI&gt;&lt;LI&gt; &lt;P&gt;Fill in your:&lt;/P&gt; 
   &lt;UL&gt;&lt;LI&gt;Account Username&lt;/LI&gt;&lt;LI&gt; &lt;P&gt;Account Password&lt;/P&gt; &lt;P&gt;&lt;SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" style="width: 999px;"&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="0693p000008uETsAAM.jpg"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/121620i866812DC1F270B06/image-size/large?v=v2&amp;amp;px=999" role="button" title="0693p000008uETsAAM.jpg" alt="0693p000008uETsAAM.jpg" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;/P&gt; &lt;/LI&gt;&lt;/UL&gt; &lt;/LI&gt;&lt;LI&gt; &lt;P&gt;Select the &lt;STRONG&gt;Advanced&lt;/STRONG&gt; check box. This will display the Service URL drop-down list:&lt;/P&gt; &lt;P&gt;&amp;nbsp;&lt;SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" style="width: 583px;"&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="0693p000008uF5uAAE.png"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/121974iC90F1F36CEDCFCB8/image-size/large?v=v2&amp;amp;px=999" role="button" title="0693p000008uF5uAAE.png" alt="0693p000008uF5uAAE.png" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;/P&gt; &lt;P&gt;Choose the correct Data Center for your location:&lt;/P&gt; 
   &lt;UL&gt;&lt;LI&gt;US Data Center&lt;/LI&gt;&lt;LI&gt;EMEA Data Center&lt;/LI&gt;&lt;LI&gt;&amp;lt;Custom&amp;gt;, add the correct URL for your environment&lt;/LI&gt;&lt;/UL&gt; &lt;/LI&gt;&lt;/OL&gt; 
 &lt;P&gt;&amp;nbsp;&lt;/P&gt; 
 &lt;H2&gt;Create and publish a Job to Talend Cloud&lt;/H2&gt; 
 &lt;P&gt;This Job shows the logic of reading the file from Azure Storage, applying a transformation, and saving the file back to Azure Storage.&lt;/P&gt; 
 &lt;P&gt;&amp;nbsp;&lt;/P&gt; 
 &lt;P&gt;Since you retrieve the file locally onto the cloud or a remote engine where the Job is executed,&amp;nbsp;any files from your previous runs must be removed. Thus, the Job starts by deleting any &lt;STRONG&gt;temp&lt;/STRONG&gt; files from previous runs, retrieving and then deleting the file from Azure Storage, transforming it locally on the cloud or remote engine, and then uploading it into Azure Storage again. Your Job should look&amp;nbsp;like this:&lt;/P&gt; 
 &lt;P&gt;&amp;nbsp;&lt;/P&gt; 
 &lt;P&gt;&lt;SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" style="width: 999px;"&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="0693p000008uEkVAAU.jpg"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/125183iBB5464E5C7545640/image-size/large?v=v2&amp;amp;px=999" role="button" title="0693p000008uEkVAAU.jpg" alt="0693p000008uEkVAAU.jpg" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;/P&gt; 
 &lt;P&gt;&amp;nbsp;&lt;/P&gt; 
 &lt;P&gt;When you are ready to publish your Job, right-click the Job in the Repository and click &lt;STRONG&gt;Publish to Cloud&lt;/STRONG&gt;.&lt;/P&gt; 
 &lt;P&gt;&lt;SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" style="width: 999px;"&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="0693p000008uEWJAA2.jpg"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/122709iD91C31EFC31F750E/image-size/large?v=v2&amp;amp;px=999" role="button" title="0693p000008uEWJAA2.jpg" alt="0693p000008uEWJAA2.jpg" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;/P&gt; 
 &lt;P&gt;&amp;nbsp;&lt;/P&gt; 
 &lt;P&gt;If you have published the Job before, you may need to increment the version number of the Job before clicking the &lt;STRONG&gt;Finish&lt;/STRONG&gt; button, as shown below:&lt;/P&gt; 
 &lt;P&gt;&lt;SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" style="width: 728px;"&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="0693p000008uEwaAAE.jpg"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/123582iA74620E106971711/image-size/large?v=v2&amp;amp;px=999" role="button" title="0693p000008uEwaAAE.jpg" alt="0693p000008uEwaAAE.jpg" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;/P&gt; 
 &lt;P&gt;&amp;nbsp;&lt;/P&gt; 
 &lt;H2&gt;Manage your deployment&lt;/H2&gt; 
 &lt;P&gt;Navigate to the login page for Talend Cloud: &lt;A href="https://integrationcloud.talend.com/" target="_blank"&gt;integrationcloud.talend.com&lt;/A&gt;. If you prefer to use the European instance, click the &lt;STRONG&gt;Go to European instance&lt;/STRONG&gt; link.&lt;/P&gt; 
 &lt;P&gt;&amp;nbsp;&lt;/P&gt; 
 &lt;OL&gt;&lt;LI&gt;Type your &lt;STRONG&gt;Email&lt;/STRONG&gt; and &lt;STRONG&gt;Password&lt;/STRONG&gt;, then click the &lt;STRONG&gt;LOGIN&lt;/STRONG&gt; button to connect. &lt;P&gt;&lt;SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" style="width: 834px;"&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="0693p000008uFBLAA2.jpg"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/121493i5A82637BE835EF90/image-size/large?v=v2&amp;amp;px=999" role="button" title="0693p000008uFBLAA2.jpg" alt="0693p000008uFBLAA2.jpg" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;/P&gt; &lt;P&gt;&amp;nbsp;&lt;/P&gt; &lt;/LI&gt;&lt;LI&gt;Click the &lt;STRONG&gt;Launch&lt;/STRONG&gt; link to access Talend Cloud. &lt;P&gt;&lt;SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" style="width: 999px;"&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="0693p000008uFByAAM.jpg"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/122253i6F3E99B00800DF4E/image-size/large?v=v2&amp;amp;px=999" role="button" title="0693p000008uFByAAM.jpg" alt="0693p000008uFByAAM.jpg" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;/P&gt; &lt;P&gt;&amp;nbsp;&lt;/P&gt; &lt;/LI&gt;&lt;LI&gt;Verify that your Job was published successfully.&lt;/LI&gt;&lt;/OL&gt; 
 &lt;P&gt;&amp;nbsp;&lt;/P&gt; 
 &lt;H1&gt;&lt;STRONG&gt;Design an Azure Function App&lt;/STRONG&gt;&lt;/H1&gt; 
 &lt;P&gt;This section explains how to create an Azure Function App that will call or trigger the Job when a new file arrives in Azure Storage.&lt;/P&gt; 
 &lt;P&gt;&amp;nbsp;&lt;/P&gt; 
 &lt;H2&gt;Create the Azure Function App&lt;/H2&gt; 
 &lt;OL&gt;&lt;LI&gt;Open your web browser and type: &lt;A href="https://portal.azure.com" target="_blank"&gt;portal.azure.com&lt;/A&gt; &lt;P&gt;&lt;SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" style="width: 999px;"&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="0693p000008uFC8AAM.jpg"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/123355i447301BF8640520A/image-size/large?v=v2&amp;amp;px=999" role="button" title="0693p000008uFC8AAM.jpg" alt="0693p000008uFC8AAM.jpg" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;/P&gt; &lt;P&gt;&amp;nbsp;&lt;/P&gt; &lt;/LI&gt;&lt;LI&gt;Click &lt;STRONG&gt;Create a resource&lt;/STRONG&gt;. &lt;P&gt;&lt;SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" style="width: 999px;"&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="0693p000008uEoqAAE.jpg"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/123802iFF134D11F0240A31/image-size/large?v=v2&amp;amp;px=999" role="button" title="0693p000008uEoqAAE.jpg" alt="0693p000008uEoqAAE.jpg" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;/P&gt; &lt;P&gt;&amp;nbsp;&lt;/P&gt; &lt;/LI&gt;&lt;LI&gt;Configure your Azure Function App settings as follows: 
   &lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD colspan="1" rowspan="1"&gt; &lt;P&gt;&lt;STRONG&gt;Field&lt;/STRONG&gt;&lt;/P&gt; &lt;/TD&gt;&lt;TD colspan="1" rowspan="1"&gt; &lt;P&gt;&lt;STRONG&gt;Value&lt;/STRONG&gt;&lt;/P&gt; &lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD colspan="1" rowspan="1"&gt; &lt;P&gt;&lt;STRONG&gt;App name&lt;/STRONG&gt;&lt;/P&gt; &lt;/TD&gt;&lt;TD colspan="1" rowspan="1"&gt; &lt;P&gt;Define the name of your Azure Function App&lt;/P&gt; &lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD colspan="1" rowspan="1"&gt; &lt;P&gt;&lt;STRONG&gt;Subscription&lt;/STRONG&gt;&lt;/P&gt; &lt;/TD&gt;&lt;TD colspan="1" rowspan="1"&gt; &lt;P&gt;Select your Subscription&lt;/P&gt; &lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD colspan="1" rowspan="1"&gt; &lt;P&gt;&lt;STRONG&gt;Resource Group&lt;/STRONG&gt;&lt;/P&gt; &lt;/TD&gt;&lt;TD colspan="1" rowspan="1"&gt; &lt;P&gt;Select your Resource Group&lt;/P&gt; &lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD colspan="1" rowspan="1"&gt; &lt;P&gt;&lt;STRONG&gt;OS&lt;/STRONG&gt;&lt;/P&gt; &lt;/TD&gt;&lt;TD colspan="1" rowspan="1"&gt; &lt;P&gt;Select &lt;STRONG&gt;Windows&lt;/STRONG&gt;&lt;/P&gt; &lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD colspan="1" rowspan="1"&gt; &lt;P&gt;&lt;STRONG&gt;Hosting Plan&lt;/STRONG&gt;&lt;/P&gt; &lt;/TD&gt;&lt;TD colspan="1" rowspan="1"&gt; &lt;P&gt;Select &lt;STRONG&gt;Consumption&lt;/STRONG&gt; &lt;STRONG&gt;Plan&lt;/STRONG&gt;&lt;/P&gt; &lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD colspan="1" rowspan="1"&gt; &lt;P&gt;&lt;STRONG&gt;Location&lt;/STRONG&gt;&lt;/P&gt; &lt;/TD&gt;&lt;TD colspan="1" rowspan="1"&gt; &lt;P&gt;Select your location&lt;/P&gt; &lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD colspan="1" rowspan="1"&gt; &lt;P&gt;&lt;STRONG&gt;Storage&lt;/STRONG&gt;&lt;/P&gt; &lt;/TD&gt;&lt;TD colspan="1" rowspan="1"&gt; &lt;P&gt;Select Azure Storage&lt;/P&gt; &lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD colspan="1" rowspan="1"&gt; &lt;P&gt;&lt;STRONG&gt;Application Insights Location&lt;/STRONG&gt;&lt;/P&gt; &lt;/TD&gt;&lt;TD colspan="1" rowspan="1"&gt; &lt;P&gt;Select your location&lt;/P&gt; &lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt; &lt;P&gt;&amp;nbsp;&lt;/P&gt; &lt;/LI&gt;&lt;LI&gt;Click &lt;STRONG&gt;Create&lt;/STRONG&gt;. &lt;P&gt;&lt;SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" style="width: 999px;"&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="0693p000008uFArAAM.jpg"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/121958i6880FE3EB2684042/image-size/large?v=v2&amp;amp;px=999" role="button" title="0693p000008uFArAAM.jpg" alt="0693p000008uFArAAM.jpg" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;/P&gt; &lt;P&gt;&amp;nbsp;&lt;/P&gt; &lt;/LI&gt;&lt;/OL&gt; 
 &lt;H2&gt;&lt;STRONG&gt;Write the Azure Function Logic&lt;/STRONG&gt;&lt;/H2&gt; 
 &lt;P&gt;This section explains to write the logic that your Azure Function will run when it is executed.&lt;/P&gt; 
 &lt;P&gt;&amp;nbsp;&lt;/P&gt; 
 &lt;OL&gt;&lt;LI&gt; &lt;P&gt;Navigate to your Azure Function App and click &lt;STRONG&gt;+&lt;/STRONG&gt; (Create new).&lt;/P&gt; &lt;P&gt;&lt;SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" style="width: 999px;"&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="0693p000008uEy3AAE.jpg"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/125035iB9BB0D03DE4D203C/image-size/large?v=v2&amp;amp;px=999" role="button" title="0693p000008uEy3AAE.jpg" alt="0693p000008uEy3AAE.jpg" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;/P&gt; &lt;P&gt;&amp;nbsp;&lt;/P&gt; &lt;/LI&gt;&lt;LI&gt;On the Blob trigger pane, select &lt;STRONG&gt;JavaScript&lt;/STRONG&gt;.&lt;BR /&gt; &lt;P&gt;&lt;SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" style="width: 999px;"&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="0693p000008uF8lAAE.jpg"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/123518i63BD00C09DA4C4A2/image-size/large?v=v2&amp;amp;px=999" role="button" title="0693p000008uF8lAAE.jpg" alt="0693p000008uF8lAAE.jpg" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;/P&gt; &lt;P&gt;&amp;nbsp;&lt;/P&gt; &lt;/LI&gt;&lt;LI&gt;Configure your Function settings as follows: 
   &lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD colspan="1" rowspan="1"&gt; &lt;P&gt;&lt;STRONG&gt;Field&lt;/STRONG&gt;&lt;/P&gt; &lt;/TD&gt;&lt;TD colspan="1" rowspan="1"&gt; &lt;P&gt;&lt;STRONG&gt;Value&lt;/STRONG&gt;&lt;/P&gt; &lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD colspan="1" rowspan="1"&gt; &lt;P&gt;&lt;STRONG&gt;Language&lt;/STRONG&gt;&lt;/P&gt; &lt;/TD&gt;&lt;TD colspan="1" rowspan="1"&gt; &lt;P&gt;Leave &lt;STRONG&gt;JavaScript&lt;/STRONG&gt; selected&lt;/P&gt; &lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD colspan="1" rowspan="1"&gt; &lt;P&gt;&lt;STRONG&gt;Name&lt;/STRONG&gt;&lt;/P&gt; &lt;/TD&gt;&lt;TD colspan="1" rowspan="1"&gt; &lt;P&gt;Define the name of your Function&lt;/P&gt; &lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD colspan="1" rowspan="1"&gt; &lt;P&gt;&lt;STRONG&gt;Path&lt;/STRONG&gt;&lt;/P&gt; &lt;/TD&gt;&lt;TD colspan="1" rowspan="1"&gt; &lt;P&gt;Define the name your Blob as:&lt;/P&gt; &lt;P&gt;&lt;STRONG&gt;talend-in/{&lt;EM&gt;name&lt;/EM&gt;}&lt;/STRONG&gt;&lt;/P&gt; &lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD colspan="1" rowspan="1"&gt; &lt;P&gt;&lt;STRONG&gt;Storage account connection&lt;/STRONG&gt;&lt;/P&gt; &lt;/TD&gt;&lt;TD colspan="1" rowspan="1"&gt; &lt;P&gt;Select your Azure Storage&lt;/P&gt; &lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt; &lt;P&gt;&amp;nbsp;&lt;/P&gt; &lt;P&gt;&lt;SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" style="width: 999px;"&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="0693p000008uFCcAAM.jpg"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/122619i24D4A465D84F05DA/image-size/large?v=v2&amp;amp;px=999" role="button" title="0693p000008uFCcAAM.jpg" alt="0693p000008uFCcAAM.jpg" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;/P&gt; &lt;P&gt;&amp;nbsp;&lt;/P&gt; &lt;/LI&gt;&lt;LI&gt;Click &lt;STRONG&gt;Create&lt;/STRONG&gt;.&lt;/LI&gt;&lt;LI&gt;Click your Function. &lt;P&gt;&lt;SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" style="width: 999px;"&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="0693p000008uF4PAAU.jpg"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/123637iF4ED5DAD622DC284/image-size/large?v=v2&amp;amp;px=999" role="button" title="0693p000008uF4PAAU.jpg" alt="0693p000008uF4PAAU.jpg" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;/P&gt; &lt;P&gt;&amp;nbsp;&lt;/P&gt; &lt;/LI&gt;&lt;LI&gt; &lt;P&gt;Replace the default code with the following, remembering to change the &lt;STRONG&gt;username&lt;/STRONG&gt; and &lt;STRONG&gt;password&lt;/STRONG&gt; and changing the &lt;STRONG&gt;body.executable&lt;/STRONG&gt; parameter to match your specific configuration:&lt;/P&gt; &lt;PRE&gt;function callback(error, response, body) {
context.log(JSON.stringify(body));
context.log(response);
}

module.exports = function (context, myBlob) {
context.log("JavaScript blob trigger function processed blob \n Name:", context.bindingData.name, "\n Blob Size:", myBlob.length, "Bytes");

// Body
var parameters = new Object();
parameters.fileNameIn = context.bindingData.name;
var body = new Object();
body.executable = "5b23c0d3b1187f0ebec41ee1";
body.parameters = parameters;

var jsonString= JSON.stringify(body);
context.log(jsonString);
 
// Call POST

// Include the request library for Node.js
var request = require('request');
// Basic Authentication credentials
var username = "*****@talend.com";
var password = "*****";
var authenticationHeader = "Basic " + new Buffer(username + ":" + password).toString("base64");

//Request
var options ={
method: 'POST',
url : "https://ipaas.us.cloud.talend.com/api/v1.1/executions",
body: jsonString,
headers : {
"Content-Type": "application/json",
"Accept": "application/json",
"Authorization" : authenticationHeader }
};

request(options, callback);
context.log("Done!")

context.done();
};&lt;/PRE&gt; &lt;P&gt;&amp;nbsp;&lt;/P&gt; &lt;P&gt;&lt;SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" style="width: 999px;"&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="0693p000008uF43AAE.jpg"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/124524i819A1C03063502E3/image-size/large?v=v2&amp;amp;px=999" role="button" title="0693p000008uF43AAE.jpg" alt="0693p000008uF43AAE.jpg" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;/P&gt; &lt;P&gt;&amp;nbsp;&lt;/P&gt; &lt;/LI&gt;&lt;/OL&gt; 
 &lt;P&gt;&amp;nbsp;&lt;/P&gt; 
 &lt;H2&gt;Create the package.json file&lt;/H2&gt; 
 &lt;P&gt;Create and place the following &lt;STRONG&gt;package.json&lt;/STRONG&gt; file in the shared folder of your Azure Function.&lt;/P&gt; 
 &lt;PRE&gt;{
     "name": "sample-cloud-storage",
     "version": "0.0.1",
     "dependencies": {
          "request": "2.87.0"
      }
}
&lt;/PRE&gt; 
 &lt;P&gt;The screen below shows the &lt;STRONG&gt;package.json&lt;/STRONG&gt; file as it should be configured and located:&lt;/P&gt; 
 &lt;P&gt;&lt;SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" style="width: 999px;"&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="0693p000008uErfAAE.jpg"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/122125i61E24658358E4C4F/image-size/large?v=v2&amp;amp;px=999" role="button" title="0693p000008uErfAAE.jpg" alt="0693p000008uErfAAE.jpg" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;/P&gt; 
 &lt;P&gt;&amp;nbsp;&lt;/P&gt; 
 &lt;H2&gt;Configure the Platform Feature&lt;/H2&gt; 
 &lt;OL&gt;&lt;LI&gt;Navigate to your Azure Function and click &lt;STRONG&gt;Platform&lt;/STRONG&gt;&amp;nbsp;&lt;STRONG&gt;features&lt;/STRONG&gt;. &lt;P&gt;&lt;SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" style="width: 999px;"&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="0693p000008uFCwAAM.jpg"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/122598i08B42E51D98F8529/image-size/large?v=v2&amp;amp;px=999" role="button" title="0693p000008uFCwAAM.jpg" alt="0693p000008uFCwAAM.jpg" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;/P&gt; &lt;P&gt;&amp;nbsp;&lt;/P&gt; &lt;/LI&gt;&lt;LI&gt;In the Platform features section, click &lt;STRONG&gt;Console&lt;/STRONG&gt;. &lt;P&gt;&lt;SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" style="width: 999px;"&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="0693p000008uFD6AAM.jpg"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/121510iCD1782A8FB776B30/image-size/large?v=v2&amp;amp;px=999" role="button" title="0693p000008uFD6AAM.jpg" alt="0693p000008uFD6AAM.jpg" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;/P&gt; &lt;P&gt;&amp;nbsp;&lt;/P&gt; &lt;/LI&gt;&lt;LI&gt;Type &lt;STRONG&gt;dir&lt;/STRONG&gt; in the console, then press &lt;STRONG&gt;Enter&lt;/STRONG&gt;. &lt;P&gt;&lt;SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" style="width: 999px;"&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="0693p000008uFDBAA2.jpg"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/122950i300F2B4CC44161A1/image-size/large?v=v2&amp;amp;px=999" role="button" title="0693p000008uFDBAA2.jpg" alt="0693p000008uFDBAA2.jpg" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;/P&gt; &lt;P&gt;&amp;nbsp;&lt;/P&gt; &lt;/LI&gt;&lt;LI&gt;Confirm that the &lt;STRONG&gt;package.json&lt;/STRONG&gt; file is in the directory. &lt;P&gt;&lt;SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" style="width: 999px;"&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="0693p000008uFBQAA2.jpg"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/124352i0AC3B50E7E18E57C/image-size/large?v=v2&amp;amp;px=999" role="button" title="0693p000008uFBQAA2.jpg" alt="0693p000008uFBQAA2.jpg" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;/P&gt; &lt;P&gt;&amp;nbsp;&lt;/P&gt; &lt;/LI&gt;&lt;LI&gt;Type&amp;nbsp;&lt;STRONG&gt;npm install request&lt;/STRONG&gt;, then press Enter. &lt;P&gt;&lt;SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" style="width: 999px;"&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="0693p000008uFDQAA2.jpg"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/123536iA6130A775E86094F/image-size/large?v=v2&amp;amp;px=999" role="button" title="0693p000008uFDQAA2.jpg" alt="0693p000008uFDQAA2.jpg" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;/P&gt; &lt;P&gt;&amp;nbsp;&lt;/P&gt; &lt;/LI&gt;&lt;/OL&gt; 
 &lt;P&gt;You should see the output in the console as shown in the screenshot; if not, consult your Azure documentation and retrace your steps to make sure the function is properly configured. Talend recommends reading through the Azure Functions documentation, as configuration steps may change in the future.&lt;/P&gt; 
 &lt;P&gt;&amp;nbsp;&lt;/P&gt; 
 &lt;H1&gt;End-to-end processing of the file&lt;/H1&gt; 
 &lt;P&gt;The integration you just developed is event-driven: as soon as a file is placed in Azure Storage, it will trigger the Azure Function, which will trigger the Job. Review the logs to see the execution of these event tasks. You should get an output file uploaded into Azure Storage.&lt;/P&gt; 
 &lt;P&gt;&amp;nbsp;&lt;/P&gt; 
 &lt;H2&gt;INPUT&lt;/H2&gt; 
 &lt;P&gt;Place a file in the Blob Container (&lt;STRONG&gt;talend-in&lt;/STRONG&gt;) as shown&amp;nbsp;below:&lt;/P&gt; 
 &lt;P&gt;&lt;SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" style="width: 999px;"&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="0693p000008uF5DAAU.jpg"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/123396i83D6CE14AC3A6216/image-size/large?v=v2&amp;amp;px=999" role="button" title="0693p000008uF5DAAU.jpg" alt="0693p000008uF5DAAU.jpg" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;/P&gt; 
 &lt;P&gt;&amp;nbsp;&lt;/P&gt; 
 &lt;H2&gt;Check the Azure Function Log&lt;/H2&gt; 
 &lt;P&gt;To confirm that the Azure Function has executed, you&amp;nbsp;need to check its log.&lt;/P&gt; 
 &lt;P&gt;&lt;FONT size="5" color="#3366FF"&gt;&lt;SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" style="width: 999px;"&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="0693p000008uEyZAAU.jpg"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/124788i70DD0182D8707B3C/image-size/large?v=v2&amp;amp;px=999" role="button" title="0693p000008uEyZAAU.jpg" alt="0693p000008uEyZAAU.jpg" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt; 
 &lt;P&gt;&amp;nbsp;&lt;/P&gt; 
 &lt;H2&gt;Review&amp;nbsp;Talend Job Execution&lt;/H2&gt; 
 &lt;P&gt;Click the &lt;STRONG&gt;Log&lt;/STRONG&gt; link, to the right of the execution record, and confirm the Job executed successfully. If any errors are encountered, they are shown in the Log.&lt;/P&gt; 
 &lt;P&gt;&lt;SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" style="width: 999px;"&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="0693p000008uFDVAA2.jpg"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/122499iBA26972F7C7B0DF7/image-size/large?v=v2&amp;amp;px=999" role="button" title="0693p000008uFDVAA2.jpg" alt="0693p000008uFDVAA2.jpg" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;/P&gt; 
 &lt;P&gt;&amp;nbsp;&lt;/P&gt; 
 &lt;P&gt;The Log window&amp;nbsp;opens and displays the Job results, as shown&amp;nbsp;below:&lt;/P&gt; 
 &lt;P&gt;&lt;SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" style="width: 999px;"&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="0693p000008uFDfAAM.jpg"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/123310i311F349E3BBCF816/image-size/large?v=v2&amp;amp;px=999" role="button" title="0693p000008uFDfAAM.jpg" alt="0693p000008uFDfAAM.jpg" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;/P&gt; 
 &lt;P&gt;&amp;nbsp;&lt;/P&gt; 
 &lt;H2&gt;OUTPUT&lt;/H2&gt; 
 &lt;P&gt;Go to the&amp;nbsp;Blob container (&lt;STRONG&gt;talend-out&lt;/STRONG&gt;) and confirm that the output file&amp;nbsp;was written by the Talend Job as expected.&lt;/P&gt; 
 &lt;P&gt;&lt;SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" style="width: 999px;"&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="0693p000008uFDkAAM.jpg"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/124386i3BDDCECBF39F5777/image-size/large?v=v2&amp;amp;px=999" role="button" title="0693p000008uFDkAAM.jpg" alt="0693p000008uFDkAAM.jpg" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;/P&gt; 
 &lt;P&gt;&amp;nbsp;&lt;/P&gt; 
 &lt;H1&gt;Conclusion&lt;/H1&gt; 
 &lt;P&gt;This article explains how to build an end-to-end integration based on triggers with Azure Functions and a Talend Job, and&amp;nbsp;shows a way to perform serverless computing. It is transparent for the IT team, and there is no need to maintain and host a server instance. Note that Talend Cloud provides Cloud Engines which are fully managed by Talend, and also provides Remote Engines if you want to host your own execution engine. However, this is not needed, unless you have security or other constraints about the data being processed&amp;nbsp;that require you&amp;nbsp;to host your own.&lt;/P&gt; 
 &lt;P&gt;&amp;nbsp;&lt;/P&gt; 
 &lt;P&gt;Microsoft Azure and Talend Cloud platforms make it easy for you to perform serverless trigger and event-based processing.&lt;/P&gt; 
&lt;/DIV&gt;&lt;/DIV&gt;</description>
    <pubDate>Tue, 23 Jan 2024 02:35:30 GMT</pubDate>
    <dc:creator>TalendSolutionExpert</dc:creator>
    <dc:date>2024-01-23T02:35:30Z</dc:date>
    <item>
      <title>Using Azure Functions to trigger Talend Cloud Jobs</title>
      <link>https://community.qlik.com/t5/Official-Support-Articles/Using-Azure-Functions-to-trigger-Talend-Cloud-Jobs/ta-p/2151853</link>
      <description>&lt;DIV class="talend-tkb-migrated-content"&gt;&lt;DIV class="lia-message-template-content-zone"&gt; 
 &lt;H1&gt;Overview&lt;/H1&gt; 
 &lt;P&gt;This article explains how to use Azure Functions to trigger a Job managed by the Talend Cloud platform. It explains how to use a trigger on Azure Blob to execute a Job published on Talend Cloud. The Job is designed in Talend Studio and published to the Talend Cloud platform where its execution on the cloud or a remote engine is managed.&lt;/P&gt; 
 &lt;P&gt;&amp;nbsp;&lt;/P&gt; 
 &lt;P&gt;It covers:&lt;/P&gt; 
 &lt;UL&gt;&lt;LI&gt;Publishing a Job to Talend Cloud&lt;/LI&gt;&lt;LI&gt;Creating an Azure function based on a Blob trigger using the JavaScript language&lt;/LI&gt;&lt;LI&gt;Testing the integration end-to-end&lt;/LI&gt;&lt;/UL&gt; 
 &lt;P&gt;&amp;nbsp;&lt;/P&gt; 
 &lt;H1&gt;Architecture&lt;/H1&gt; 
 &lt;P&gt;The diagram shows the technical implementation architecture of the solution described in this article.&lt;/P&gt; 
 &lt;P&gt;&lt;SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" style="width: 999px;"&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="0693p000008uFBPAA2.jpg"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/123989i27992F9D335D979B/image-size/large?v=v2&amp;amp;px=999" role="button" title="0693p000008uFBPAA2.jpg" alt="0693p000008uFBPAA2.jpg" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;/P&gt; 
 &lt;P&gt;&amp;nbsp;&lt;/P&gt; 
 &lt;H1&gt;Prerequisites&lt;/H1&gt; 
 &lt;P&gt;&lt;STRONG&gt;Microsoft Azure&lt;/STRONG&gt;&lt;/P&gt; 
 &lt;UL&gt;&lt;LI&gt;You need access to Microsoft Azure with a valid account (&lt;A href="https://portal.azure.com" target="_blank"&gt;portal.azure.com&lt;/A&gt;).&lt;/LI&gt;&lt;LI&gt;You need full access to Azure services.&lt;/LI&gt;&lt;/UL&gt; 
 &lt;P&gt;&lt;STRONG&gt;Talend&lt;/STRONG&gt;&lt;/P&gt; 
 &lt;UL&gt;&lt;LI&gt;You need to be familiar with Talend Studio and Talend Cloud.&lt;/LI&gt;&lt;LI&gt;You need access to Talend Cloud with a valid account. You can sign up for a free trial account here: &lt;A href="https://iam.us.cloud.talend.com/idp/trial-registration" target="_blank"&gt;https://iam.us.cloud.talend.com/idp/trial-registration&lt;/A&gt;.&lt;/LI&gt;&lt;/UL&gt; 
 &lt;P&gt;&amp;nbsp;&lt;/P&gt; 
 &lt;H1&gt;Create a Job with Talend Studio&lt;/H1&gt; 
 &lt;P&gt;This section explains how to create a new Job and publish it to Talend Cloud.&lt;/P&gt; 
 &lt;P&gt;&amp;nbsp;&lt;/P&gt; 
 &lt;H2&gt;Configure Talend Studio to connect to Talend Cloud&lt;/H2&gt; 
 &lt;P&gt;In Studio:&lt;/P&gt; 
 &lt;OL&gt;&lt;LI&gt;Navigate to &lt;STRONG&gt;Window&lt;/STRONG&gt;&amp;nbsp;&amp;gt; &lt;STRONG&gt;Preferences&lt;/STRONG&gt; &amp;gt; &lt;STRONG&gt;Talend&lt;/STRONG&gt; &amp;gt; &lt;STRONG&gt;Integration&lt;/STRONG&gt; &lt;STRONG&gt;Cloud&lt;/STRONG&gt;.&lt;/LI&gt;&lt;LI&gt; &lt;P&gt;Fill in your:&lt;/P&gt; 
   &lt;UL&gt;&lt;LI&gt;Account Username&lt;/LI&gt;&lt;LI&gt; &lt;P&gt;Account Password&lt;/P&gt; &lt;P&gt;&lt;SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" style="width: 999px;"&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="0693p000008uETsAAM.jpg"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/121620i866812DC1F270B06/image-size/large?v=v2&amp;amp;px=999" role="button" title="0693p000008uETsAAM.jpg" alt="0693p000008uETsAAM.jpg" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;/P&gt; &lt;/LI&gt;&lt;/UL&gt; &lt;/LI&gt;&lt;LI&gt; &lt;P&gt;Select the &lt;STRONG&gt;Advanced&lt;/STRONG&gt; check box. This will display the Service URL drop-down list:&lt;/P&gt; &lt;P&gt;&amp;nbsp;&lt;SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" style="width: 583px;"&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="0693p000008uF5uAAE.png"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/121974iC90F1F36CEDCFCB8/image-size/large?v=v2&amp;amp;px=999" role="button" title="0693p000008uF5uAAE.png" alt="0693p000008uF5uAAE.png" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;/P&gt; &lt;P&gt;Choose the correct Data Center for your location:&lt;/P&gt; 
   &lt;UL&gt;&lt;LI&gt;US Data Center&lt;/LI&gt;&lt;LI&gt;EMEA Data Center&lt;/LI&gt;&lt;LI&gt;&amp;lt;Custom&amp;gt;, add the correct URL for your environment&lt;/LI&gt;&lt;/UL&gt; &lt;/LI&gt;&lt;/OL&gt; 
 &lt;P&gt;&amp;nbsp;&lt;/P&gt; 
 &lt;H2&gt;Create and publish a Job to Talend Cloud&lt;/H2&gt; 
 &lt;P&gt;This Job shows the logic of reading the file from Azure Storage, applying a transformation, and saving the file back to Azure Storage.&lt;/P&gt; 
 &lt;P&gt;&amp;nbsp;&lt;/P&gt; 
 &lt;P&gt;Since you retrieve the file locally onto the cloud or a remote engine where the Job is executed,&amp;nbsp;any files from your previous runs must be removed. Thus, the Job starts by deleting any &lt;STRONG&gt;temp&lt;/STRONG&gt; files from previous runs, retrieving and then deleting the file from Azure Storage, transforming it locally on the cloud or remote engine, and then uploading it into Azure Storage again. Your Job should look&amp;nbsp;like this:&lt;/P&gt; 
 &lt;P&gt;&amp;nbsp;&lt;/P&gt; 
 &lt;P&gt;&lt;SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" style="width: 999px;"&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="0693p000008uEkVAAU.jpg"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/125183iBB5464E5C7545640/image-size/large?v=v2&amp;amp;px=999" role="button" title="0693p000008uEkVAAU.jpg" alt="0693p000008uEkVAAU.jpg" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;/P&gt; 
 &lt;P&gt;&amp;nbsp;&lt;/P&gt; 
 &lt;P&gt;When you are ready to publish your Job, right-click the Job in the Repository and click &lt;STRONG&gt;Publish to Cloud&lt;/STRONG&gt;.&lt;/P&gt; 
 &lt;P&gt;&lt;SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" style="width: 999px;"&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="0693p000008uEWJAA2.jpg"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/122709iD91C31EFC31F750E/image-size/large?v=v2&amp;amp;px=999" role="button" title="0693p000008uEWJAA2.jpg" alt="0693p000008uEWJAA2.jpg" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;/P&gt; 
 &lt;P&gt;&amp;nbsp;&lt;/P&gt; 
 &lt;P&gt;If you have published the Job before, you may need to increment the version number of the Job before clicking the &lt;STRONG&gt;Finish&lt;/STRONG&gt; button, as shown below:&lt;/P&gt; 
 &lt;P&gt;&lt;SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" style="width: 728px;"&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="0693p000008uEwaAAE.jpg"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/123582iA74620E106971711/image-size/large?v=v2&amp;amp;px=999" role="button" title="0693p000008uEwaAAE.jpg" alt="0693p000008uEwaAAE.jpg" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;/P&gt; 
 &lt;P&gt;&amp;nbsp;&lt;/P&gt; 
 &lt;H2&gt;Manage your deployment&lt;/H2&gt; 
 &lt;P&gt;Navigate to the login page for Talend Cloud: &lt;A href="https://integrationcloud.talend.com/" target="_blank"&gt;integrationcloud.talend.com&lt;/A&gt;. If you prefer to use the European instance, click the &lt;STRONG&gt;Go to European instance&lt;/STRONG&gt; link.&lt;/P&gt; 
 &lt;P&gt;&amp;nbsp;&lt;/P&gt; 
 &lt;OL&gt;&lt;LI&gt;Type your &lt;STRONG&gt;Email&lt;/STRONG&gt; and &lt;STRONG&gt;Password&lt;/STRONG&gt;, then click the &lt;STRONG&gt;LOGIN&lt;/STRONG&gt; button to connect. &lt;P&gt;&lt;SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" style="width: 834px;"&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="0693p000008uFBLAA2.jpg"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/121493i5A82637BE835EF90/image-size/large?v=v2&amp;amp;px=999" role="button" title="0693p000008uFBLAA2.jpg" alt="0693p000008uFBLAA2.jpg" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;/P&gt; &lt;P&gt;&amp;nbsp;&lt;/P&gt; &lt;/LI&gt;&lt;LI&gt;Click the &lt;STRONG&gt;Launch&lt;/STRONG&gt; link to access Talend Cloud. &lt;P&gt;&lt;SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" style="width: 999px;"&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="0693p000008uFByAAM.jpg"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/122253i6F3E99B00800DF4E/image-size/large?v=v2&amp;amp;px=999" role="button" title="0693p000008uFByAAM.jpg" alt="0693p000008uFByAAM.jpg" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;/P&gt; &lt;P&gt;&amp;nbsp;&lt;/P&gt; &lt;/LI&gt;&lt;LI&gt;Verify that your Job was published successfully.&lt;/LI&gt;&lt;/OL&gt; 
 &lt;P&gt;&amp;nbsp;&lt;/P&gt; 
 &lt;H1&gt;&lt;STRONG&gt;Design an Azure Function App&lt;/STRONG&gt;&lt;/H1&gt; 
 &lt;P&gt;This section explains how to create an Azure Function App that will call or trigger the Job when a new file arrives in Azure Storage.&lt;/P&gt; 
 &lt;P&gt;&amp;nbsp;&lt;/P&gt; 
 &lt;H2&gt;Create the Azure Function App&lt;/H2&gt; 
 &lt;OL&gt;&lt;LI&gt;Open your web browser and type: &lt;A href="https://portal.azure.com" target="_blank"&gt;portal.azure.com&lt;/A&gt; &lt;P&gt;&lt;SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" style="width: 999px;"&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="0693p000008uFC8AAM.jpg"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/123355i447301BF8640520A/image-size/large?v=v2&amp;amp;px=999" role="button" title="0693p000008uFC8AAM.jpg" alt="0693p000008uFC8AAM.jpg" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;/P&gt; &lt;P&gt;&amp;nbsp;&lt;/P&gt; &lt;/LI&gt;&lt;LI&gt;Click &lt;STRONG&gt;Create a resource&lt;/STRONG&gt;. &lt;P&gt;&lt;SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" style="width: 999px;"&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="0693p000008uEoqAAE.jpg"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/123802iFF134D11F0240A31/image-size/large?v=v2&amp;amp;px=999" role="button" title="0693p000008uEoqAAE.jpg" alt="0693p000008uEoqAAE.jpg" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;/P&gt; &lt;P&gt;&amp;nbsp;&lt;/P&gt; &lt;/LI&gt;&lt;LI&gt;Configure your Azure Function App settings as follows: 
   &lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD colspan="1" rowspan="1"&gt; &lt;P&gt;&lt;STRONG&gt;Field&lt;/STRONG&gt;&lt;/P&gt; &lt;/TD&gt;&lt;TD colspan="1" rowspan="1"&gt; &lt;P&gt;&lt;STRONG&gt;Value&lt;/STRONG&gt;&lt;/P&gt; &lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD colspan="1" rowspan="1"&gt; &lt;P&gt;&lt;STRONG&gt;App name&lt;/STRONG&gt;&lt;/P&gt; &lt;/TD&gt;&lt;TD colspan="1" rowspan="1"&gt; &lt;P&gt;Define the name of your Azure Function App&lt;/P&gt; &lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD colspan="1" rowspan="1"&gt; &lt;P&gt;&lt;STRONG&gt;Subscription&lt;/STRONG&gt;&lt;/P&gt; &lt;/TD&gt;&lt;TD colspan="1" rowspan="1"&gt; &lt;P&gt;Select your Subscription&lt;/P&gt; &lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD colspan="1" rowspan="1"&gt; &lt;P&gt;&lt;STRONG&gt;Resource Group&lt;/STRONG&gt;&lt;/P&gt; &lt;/TD&gt;&lt;TD colspan="1" rowspan="1"&gt; &lt;P&gt;Select your Resource Group&lt;/P&gt; &lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD colspan="1" rowspan="1"&gt; &lt;P&gt;&lt;STRONG&gt;OS&lt;/STRONG&gt;&lt;/P&gt; &lt;/TD&gt;&lt;TD colspan="1" rowspan="1"&gt; &lt;P&gt;Select &lt;STRONG&gt;Windows&lt;/STRONG&gt;&lt;/P&gt; &lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD colspan="1" rowspan="1"&gt; &lt;P&gt;&lt;STRONG&gt;Hosting Plan&lt;/STRONG&gt;&lt;/P&gt; &lt;/TD&gt;&lt;TD colspan="1" rowspan="1"&gt; &lt;P&gt;Select &lt;STRONG&gt;Consumption&lt;/STRONG&gt; &lt;STRONG&gt;Plan&lt;/STRONG&gt;&lt;/P&gt; &lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD colspan="1" rowspan="1"&gt; &lt;P&gt;&lt;STRONG&gt;Location&lt;/STRONG&gt;&lt;/P&gt; &lt;/TD&gt;&lt;TD colspan="1" rowspan="1"&gt; &lt;P&gt;Select your location&lt;/P&gt; &lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD colspan="1" rowspan="1"&gt; &lt;P&gt;&lt;STRONG&gt;Storage&lt;/STRONG&gt;&lt;/P&gt; &lt;/TD&gt;&lt;TD colspan="1" rowspan="1"&gt; &lt;P&gt;Select Azure Storage&lt;/P&gt; &lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD colspan="1" rowspan="1"&gt; &lt;P&gt;&lt;STRONG&gt;Application Insights Location&lt;/STRONG&gt;&lt;/P&gt; &lt;/TD&gt;&lt;TD colspan="1" rowspan="1"&gt; &lt;P&gt;Select your location&lt;/P&gt; &lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt; &lt;P&gt;&amp;nbsp;&lt;/P&gt; &lt;/LI&gt;&lt;LI&gt;Click &lt;STRONG&gt;Create&lt;/STRONG&gt;. &lt;P&gt;&lt;SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" style="width: 999px;"&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="0693p000008uFArAAM.jpg"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/121958i6880FE3EB2684042/image-size/large?v=v2&amp;amp;px=999" role="button" title="0693p000008uFArAAM.jpg" alt="0693p000008uFArAAM.jpg" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;/P&gt; &lt;P&gt;&amp;nbsp;&lt;/P&gt; &lt;/LI&gt;&lt;/OL&gt; 
 &lt;H2&gt;&lt;STRONG&gt;Write the Azure Function Logic&lt;/STRONG&gt;&lt;/H2&gt; 
 &lt;P&gt;This section explains to write the logic that your Azure Function will run when it is executed.&lt;/P&gt; 
 &lt;P&gt;&amp;nbsp;&lt;/P&gt; 
 &lt;OL&gt;&lt;LI&gt; &lt;P&gt;Navigate to your Azure Function App and click &lt;STRONG&gt;+&lt;/STRONG&gt; (Create new).&lt;/P&gt; &lt;P&gt;&lt;SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" style="width: 999px;"&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="0693p000008uEy3AAE.jpg"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/125035iB9BB0D03DE4D203C/image-size/large?v=v2&amp;amp;px=999" role="button" title="0693p000008uEy3AAE.jpg" alt="0693p000008uEy3AAE.jpg" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;/P&gt; &lt;P&gt;&amp;nbsp;&lt;/P&gt; &lt;/LI&gt;&lt;LI&gt;On the Blob trigger pane, select &lt;STRONG&gt;JavaScript&lt;/STRONG&gt;.&lt;BR /&gt; &lt;P&gt;&lt;SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" style="width: 999px;"&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="0693p000008uF8lAAE.jpg"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/123518i63BD00C09DA4C4A2/image-size/large?v=v2&amp;amp;px=999" role="button" title="0693p000008uF8lAAE.jpg" alt="0693p000008uF8lAAE.jpg" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;/P&gt; &lt;P&gt;&amp;nbsp;&lt;/P&gt; &lt;/LI&gt;&lt;LI&gt;Configure your Function settings as follows: 
   &lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD colspan="1" rowspan="1"&gt; &lt;P&gt;&lt;STRONG&gt;Field&lt;/STRONG&gt;&lt;/P&gt; &lt;/TD&gt;&lt;TD colspan="1" rowspan="1"&gt; &lt;P&gt;&lt;STRONG&gt;Value&lt;/STRONG&gt;&lt;/P&gt; &lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD colspan="1" rowspan="1"&gt; &lt;P&gt;&lt;STRONG&gt;Language&lt;/STRONG&gt;&lt;/P&gt; &lt;/TD&gt;&lt;TD colspan="1" rowspan="1"&gt; &lt;P&gt;Leave &lt;STRONG&gt;JavaScript&lt;/STRONG&gt; selected&lt;/P&gt; &lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD colspan="1" rowspan="1"&gt; &lt;P&gt;&lt;STRONG&gt;Name&lt;/STRONG&gt;&lt;/P&gt; &lt;/TD&gt;&lt;TD colspan="1" rowspan="1"&gt; &lt;P&gt;Define the name of your Function&lt;/P&gt; &lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD colspan="1" rowspan="1"&gt; &lt;P&gt;&lt;STRONG&gt;Path&lt;/STRONG&gt;&lt;/P&gt; &lt;/TD&gt;&lt;TD colspan="1" rowspan="1"&gt; &lt;P&gt;Define the name your Blob as:&lt;/P&gt; &lt;P&gt;&lt;STRONG&gt;talend-in/{&lt;EM&gt;name&lt;/EM&gt;}&lt;/STRONG&gt;&lt;/P&gt; &lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD colspan="1" rowspan="1"&gt; &lt;P&gt;&lt;STRONG&gt;Storage account connection&lt;/STRONG&gt;&lt;/P&gt; &lt;/TD&gt;&lt;TD colspan="1" rowspan="1"&gt; &lt;P&gt;Select your Azure Storage&lt;/P&gt; &lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt; &lt;P&gt;&amp;nbsp;&lt;/P&gt; &lt;P&gt;&lt;SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" style="width: 999px;"&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="0693p000008uFCcAAM.jpg"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/122619i24D4A465D84F05DA/image-size/large?v=v2&amp;amp;px=999" role="button" title="0693p000008uFCcAAM.jpg" alt="0693p000008uFCcAAM.jpg" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;/P&gt; &lt;P&gt;&amp;nbsp;&lt;/P&gt; &lt;/LI&gt;&lt;LI&gt;Click &lt;STRONG&gt;Create&lt;/STRONG&gt;.&lt;/LI&gt;&lt;LI&gt;Click your Function. &lt;P&gt;&lt;SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" style="width: 999px;"&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="0693p000008uF4PAAU.jpg"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/123637iF4ED5DAD622DC284/image-size/large?v=v2&amp;amp;px=999" role="button" title="0693p000008uF4PAAU.jpg" alt="0693p000008uF4PAAU.jpg" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;/P&gt; &lt;P&gt;&amp;nbsp;&lt;/P&gt; &lt;/LI&gt;&lt;LI&gt; &lt;P&gt;Replace the default code with the following, remembering to change the &lt;STRONG&gt;username&lt;/STRONG&gt; and &lt;STRONG&gt;password&lt;/STRONG&gt; and changing the &lt;STRONG&gt;body.executable&lt;/STRONG&gt; parameter to match your specific configuration:&lt;/P&gt; &lt;PRE&gt;function callback(error, response, body) {
context.log(JSON.stringify(body));
context.log(response);
}

module.exports = function (context, myBlob) {
context.log("JavaScript blob trigger function processed blob \n Name:", context.bindingData.name, "\n Blob Size:", myBlob.length, "Bytes");

// Body
var parameters = new Object();
parameters.fileNameIn = context.bindingData.name;
var body = new Object();
body.executable = "5b23c0d3b1187f0ebec41ee1";
body.parameters = parameters;

var jsonString= JSON.stringify(body);
context.log(jsonString);
 
// Call POST

// Include the request library for Node.js
var request = require('request');
// Basic Authentication credentials
var username = "*****@talend.com";
var password = "*****";
var authenticationHeader = "Basic " + new Buffer(username + ":" + password).toString("base64");

//Request
var options ={
method: 'POST',
url : "https://ipaas.us.cloud.talend.com/api/v1.1/executions",
body: jsonString,
headers : {
"Content-Type": "application/json",
"Accept": "application/json",
"Authorization" : authenticationHeader }
};

request(options, callback);
context.log("Done!")

context.done();
};&lt;/PRE&gt; &lt;P&gt;&amp;nbsp;&lt;/P&gt; &lt;P&gt;&lt;SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" style="width: 999px;"&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="0693p000008uF43AAE.jpg"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/124524i819A1C03063502E3/image-size/large?v=v2&amp;amp;px=999" role="button" title="0693p000008uF43AAE.jpg" alt="0693p000008uF43AAE.jpg" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;/P&gt; &lt;P&gt;&amp;nbsp;&lt;/P&gt; &lt;/LI&gt;&lt;/OL&gt; 
 &lt;P&gt;&amp;nbsp;&lt;/P&gt; 
 &lt;H2&gt;Create the package.json file&lt;/H2&gt; 
 &lt;P&gt;Create and place the following &lt;STRONG&gt;package.json&lt;/STRONG&gt; file in the shared folder of your Azure Function.&lt;/P&gt; 
 &lt;PRE&gt;{
     "name": "sample-cloud-storage",
     "version": "0.0.1",
     "dependencies": {
          "request": "2.87.0"
      }
}
&lt;/PRE&gt; 
 &lt;P&gt;The screen below shows the &lt;STRONG&gt;package.json&lt;/STRONG&gt; file as it should be configured and located:&lt;/P&gt; 
 &lt;P&gt;&lt;SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" style="width: 999px;"&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="0693p000008uErfAAE.jpg"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/122125i61E24658358E4C4F/image-size/large?v=v2&amp;amp;px=999" role="button" title="0693p000008uErfAAE.jpg" alt="0693p000008uErfAAE.jpg" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;/P&gt; 
 &lt;P&gt;&amp;nbsp;&lt;/P&gt; 
 &lt;H2&gt;Configure the Platform Feature&lt;/H2&gt; 
 &lt;OL&gt;&lt;LI&gt;Navigate to your Azure Function and click &lt;STRONG&gt;Platform&lt;/STRONG&gt;&amp;nbsp;&lt;STRONG&gt;features&lt;/STRONG&gt;. &lt;P&gt;&lt;SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" style="width: 999px;"&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="0693p000008uFCwAAM.jpg"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/122598i08B42E51D98F8529/image-size/large?v=v2&amp;amp;px=999" role="button" title="0693p000008uFCwAAM.jpg" alt="0693p000008uFCwAAM.jpg" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;/P&gt; &lt;P&gt;&amp;nbsp;&lt;/P&gt; &lt;/LI&gt;&lt;LI&gt;In the Platform features section, click &lt;STRONG&gt;Console&lt;/STRONG&gt;. &lt;P&gt;&lt;SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" style="width: 999px;"&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="0693p000008uFD6AAM.jpg"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/121510iCD1782A8FB776B30/image-size/large?v=v2&amp;amp;px=999" role="button" title="0693p000008uFD6AAM.jpg" alt="0693p000008uFD6AAM.jpg" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;/P&gt; &lt;P&gt;&amp;nbsp;&lt;/P&gt; &lt;/LI&gt;&lt;LI&gt;Type &lt;STRONG&gt;dir&lt;/STRONG&gt; in the console, then press &lt;STRONG&gt;Enter&lt;/STRONG&gt;. &lt;P&gt;&lt;SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" style="width: 999px;"&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="0693p000008uFDBAA2.jpg"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/122950i300F2B4CC44161A1/image-size/large?v=v2&amp;amp;px=999" role="button" title="0693p000008uFDBAA2.jpg" alt="0693p000008uFDBAA2.jpg" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;/P&gt; &lt;P&gt;&amp;nbsp;&lt;/P&gt; &lt;/LI&gt;&lt;LI&gt;Confirm that the &lt;STRONG&gt;package.json&lt;/STRONG&gt; file is in the directory. &lt;P&gt;&lt;SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" style="width: 999px;"&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="0693p000008uFBQAA2.jpg"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/124352i0AC3B50E7E18E57C/image-size/large?v=v2&amp;amp;px=999" role="button" title="0693p000008uFBQAA2.jpg" alt="0693p000008uFBQAA2.jpg" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;/P&gt; &lt;P&gt;&amp;nbsp;&lt;/P&gt; &lt;/LI&gt;&lt;LI&gt;Type&amp;nbsp;&lt;STRONG&gt;npm install request&lt;/STRONG&gt;, then press Enter. &lt;P&gt;&lt;SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" style="width: 999px;"&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="0693p000008uFDQAA2.jpg"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/123536iA6130A775E86094F/image-size/large?v=v2&amp;amp;px=999" role="button" title="0693p000008uFDQAA2.jpg" alt="0693p000008uFDQAA2.jpg" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;/P&gt; &lt;P&gt;&amp;nbsp;&lt;/P&gt; &lt;/LI&gt;&lt;/OL&gt; 
 &lt;P&gt;You should see the output in the console as shown in the screenshot; if not, consult your Azure documentation and retrace your steps to make sure the function is properly configured. Talend recommends reading through the Azure Functions documentation, as configuration steps may change in the future.&lt;/P&gt; 
 &lt;P&gt;&amp;nbsp;&lt;/P&gt; 
 &lt;H1&gt;End-to-end processing of the file&lt;/H1&gt; 
 &lt;P&gt;The integration you just developed is event-driven: as soon as a file is placed in Azure Storage, it will trigger the Azure Function, which will trigger the Job. Review the logs to see the execution of these event tasks. You should get an output file uploaded into Azure Storage.&lt;/P&gt; 
 &lt;P&gt;&amp;nbsp;&lt;/P&gt; 
 &lt;H2&gt;INPUT&lt;/H2&gt; 
 &lt;P&gt;Place a file in the Blob Container (&lt;STRONG&gt;talend-in&lt;/STRONG&gt;) as shown&amp;nbsp;below:&lt;/P&gt; 
 &lt;P&gt;&lt;SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" style="width: 999px;"&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="0693p000008uF5DAAU.jpg"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/123396i83D6CE14AC3A6216/image-size/large?v=v2&amp;amp;px=999" role="button" title="0693p000008uF5DAAU.jpg" alt="0693p000008uF5DAAU.jpg" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;/P&gt; 
 &lt;P&gt;&amp;nbsp;&lt;/P&gt; 
 &lt;H2&gt;Check the Azure Function Log&lt;/H2&gt; 
 &lt;P&gt;To confirm that the Azure Function has executed, you&amp;nbsp;need to check its log.&lt;/P&gt; 
 &lt;P&gt;&lt;FONT size="5" color="#3366FF"&gt;&lt;SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" style="width: 999px;"&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="0693p000008uEyZAAU.jpg"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/124788i70DD0182D8707B3C/image-size/large?v=v2&amp;amp;px=999" role="button" title="0693p000008uEyZAAU.jpg" alt="0693p000008uEyZAAU.jpg" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt; 
 &lt;P&gt;&amp;nbsp;&lt;/P&gt; 
 &lt;H2&gt;Review&amp;nbsp;Talend Job Execution&lt;/H2&gt; 
 &lt;P&gt;Click the &lt;STRONG&gt;Log&lt;/STRONG&gt; link, to the right of the execution record, and confirm the Job executed successfully. If any errors are encountered, they are shown in the Log.&lt;/P&gt; 
 &lt;P&gt;&lt;SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" style="width: 999px;"&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="0693p000008uFDVAA2.jpg"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/122499iBA26972F7C7B0DF7/image-size/large?v=v2&amp;amp;px=999" role="button" title="0693p000008uFDVAA2.jpg" alt="0693p000008uFDVAA2.jpg" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;/P&gt; 
 &lt;P&gt;&amp;nbsp;&lt;/P&gt; 
 &lt;P&gt;The Log window&amp;nbsp;opens and displays the Job results, as shown&amp;nbsp;below:&lt;/P&gt; 
 &lt;P&gt;&lt;SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" style="width: 999px;"&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="0693p000008uFDfAAM.jpg"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/123310i311F349E3BBCF816/image-size/large?v=v2&amp;amp;px=999" role="button" title="0693p000008uFDfAAM.jpg" alt="0693p000008uFDfAAM.jpg" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;/P&gt; 
 &lt;P&gt;&amp;nbsp;&lt;/P&gt; 
 &lt;H2&gt;OUTPUT&lt;/H2&gt; 
 &lt;P&gt;Go to the&amp;nbsp;Blob container (&lt;STRONG&gt;talend-out&lt;/STRONG&gt;) and confirm that the output file&amp;nbsp;was written by the Talend Job as expected.&lt;/P&gt; 
 &lt;P&gt;&lt;SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" style="width: 999px;"&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="0693p000008uFDkAAM.jpg"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/124386i3BDDCECBF39F5777/image-size/large?v=v2&amp;amp;px=999" role="button" title="0693p000008uFDkAAM.jpg" alt="0693p000008uFDkAAM.jpg" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;/P&gt; 
 &lt;P&gt;&amp;nbsp;&lt;/P&gt; 
 &lt;H1&gt;Conclusion&lt;/H1&gt; 
 &lt;P&gt;This article explains how to build an end-to-end integration based on triggers with Azure Functions and a Talend Job, and&amp;nbsp;shows a way to perform serverless computing. It is transparent for the IT team, and there is no need to maintain and host a server instance. Note that Talend Cloud provides Cloud Engines which are fully managed by Talend, and also provides Remote Engines if you want to host your own execution engine. However, this is not needed, unless you have security or other constraints about the data being processed&amp;nbsp;that require you&amp;nbsp;to host your own.&lt;/P&gt; 
 &lt;P&gt;&amp;nbsp;&lt;/P&gt; 
 &lt;P&gt;Microsoft Azure and Talend Cloud platforms make it easy for you to perform serverless trigger and event-based processing.&lt;/P&gt; 
&lt;/DIV&gt;&lt;/DIV&gt;</description>
      <pubDate>Tue, 23 Jan 2024 02:35:30 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Official-Support-Articles/Using-Azure-Functions-to-trigger-Talend-Cloud-Jobs/ta-p/2151853</guid>
      <dc:creator>TalendSolutionExpert</dc:creator>
      <dc:date>2024-01-23T02:35:30Z</dc:date>
    </item>
  </channel>
</rss>

