Logic Apps, which run on Microsoft Azure Cloud services, is the platform that enables serverless orchestration and implementation of scalable integrations and workflows in the cloud. They primarily help create, develop and deploy cloud-based integrations — starting from development to production — in easy, consistent steps. Microsoft has introduced many new connectors along with Azure resources to meet the demands and integration requirements of most organizations.
Microsoft's Visual Studio Team System offers predefined templates and other accessible resources across multiple Logic Apps. Visual Studio is the automation transition framework that offers advanced features for developing, deploying and automating Logic Apps. It‘s an integrated development environment (IDE) that contains build and release definitions, where build is used for creating artifacts and release is used for deployment.
In this blog, we will walk through a step-by-step demonstration of the entire process of deploying Logic Apps through the creation of a reference project called MyProject. The prerequisites of the Logic Apps template and template parameter files are already checked in Team Foundation Server (TFS).
The screen capture below shows the Azure Logic Apps template and template parameter files.
Once the Logic Apps files have been created; the next step involves creation of a build definition for creating artifacts for release purposes.
Step-by-step guide to creating a build definition
Setting up a build option enables the creation of your own build definition. Multiple template options will be available to customize the build definitions.
The below snippet depicts an empty template where the tasks will be added as per the requirement.
The below screenshot is the result of choosing the empty process option.
After the task has been added, choose copy publish artifacts, as depicted in this next screen shot.
Enter the required information into the following fields:
- Copy Root: This is the root folder where the files have been checked in.
- Contents: This function picks all JSON files.
- Artifact name: All artifacts get created in this folder.
- Artifact type: Choose server
Now the build definition “LogicAppBuildDefinition” is successfully created. For the next step, save & queue is clicked to trigger the build. The below screenshot depicts the process.
The created artifacts are then stored in the drop folder. But the result is incomplete without the artifacts being deployed. A similar process can be followed for the release definition as was followed for the build definition. With the addition of appropriate tasks, the release definition can be easily created.
Creating the release definition
Go to the release option and then click on new definition. Then select the definition based on its functionality. In this next image, an empty definition is selected and then next is clicked.
For the next screen, the encircled box can be clicked to prefer continuous deployment, whenever the build is successful. After you click the create option, the release definition will be successfully created.
The highlighted parts of the next screenshot represent the name of the release definition. Click the pencil icon to enter the name of the release definition.
In this next image, the release definition is named MyReleaseDefinition. Now, link the build definition with the release definition. This is required because the release definition needs to pick the artifacts from the associated build definition. The artifacts can be observed under the representational release definition MyReleaseDefinition, as shown in the below screenshot.
The next screenshot will help in understanding the step. In it, the highlighted option of “artifacts” is clicked on and then the highlighted “link an artifact source” is clicked.
The screenshot below depicts the original screen, with highlighted tokens that the user should be able to correlate. Clicking on the link option will link the build definition to the release definition.
The default version should be kept as the latest so that whenever the code is deployed, its latest version gets deployed.
The next step involves adding the respective tasks that are required for Azure Logic Apps deployment. By following the below-mentioned steps, the task can be easily added to the newly created release definition.
After clicking add task, a dialog box which contains multiple task catalogs will be prompted. As the prime motive is the deployment of the Logic Apps, the task will be chosen depending upon its functionality. The below screenshot represents how the task catalog looks.
In this example, the Azure Resource Group Deployment is selected. Define the resource group in simple terms. If an associated resource group is deployed, then the Logic App along with its dependencies will also get deployed.
The name of the task can be changed by clicking on the edit button on the right side. Name it Deploy Azure Logic Apps. The next screenshot represents the fields that need to be filled.
- Azure Subscription: If the specific user-desired Azure subscription is not listed in the drop down, then referring to the below link will help the user to add it.
- Action: Creating or updating the resource group.
- Resource Group: If the resource group is already created, then the resource group can be selected from the dropdown. In case of a new resource group, the name of the resource group is manually typed.
- Location: The location is selected for deploying LogicApp.
- Template and Template Parameter files are selected from linked drop folder.
Now the creation of the release definition is successfully accomplished. To deploy it, click on create release.
Select the build number to be deployed and then click to create it. Then click deploy. The deployment will start, after the Azure subscription-based Logic App is created, or if it is already created, then it will be updated with the checked-in template.
Logic Apps is an uncomplicated yet power-packed service that helps developers design with available modules. The focus is to make the entire process feasible with minimum effort. Deployment of Azure Logic Apps through Visual Studio Team Systems with the help of ARM templates can be completed by keeping in mind the simple steps we have outlined in this blog.
To learn more about why your organization should use Logic Apps, read our next blog post.
If you are still not sure how Logic Apps can help with enterprise integration, Emtec can help. Contact us for a free consultation on how your organization can benefit from Logic Apps Deployment.