Monday 19 August 2019

Azure DevOps for BizTalk CI-CD


In this blog, I would showcase a simple demo to deploy application using Azure Devops CI-CD pipeline with BizTalk Server Application Project.

In order leverage Azure Devops,  we should setup a build /azure pipeline agent in the environment(Dev,UAT and PROD).

Go to Organisation Setting in AzureDevops portal and click on  download agent from the Agent pools page.  Extract the zip and run the config.cmd. Now, provide the organisation url and access token (PAT) then configure the agent name and work directory as shown below

Once the build agent is ready, let us add the Application Project to the existing BizTalk solution and configure the JSON file, in this file we can define the order of BizTalk assemblies to be built and deployed and specify the bindings to be imported, we can even have the pre and post processing scripts as shown below. 
 Let us create the CI-CD pipeline in Azure Devops, navigate to Build under the pipeline and choose the repos and go an empty template as shown, 

Let us choose the agent and then add tasks to build(msbuild) and publish(publish artifacts) the artifacts in the azure tfs location, this published artifacts will be used by release pipeline for the deployment.

Here we will configure, release pipeline using the output of build pipeline. Create a new release pipeline and configure the build output and select tasks, choose Deploy BizTalk Server application and configure it as shown below.

Now, Build  (CI) and Release(CD) Pipelines are ready, we can enable continuous integration and continuous deployment triggers in build and release pipelines as shown below.
For every changes made to the Repo branch, CI and CD will be triggered and application would be deployed.