Use Your Mouse to Create Continuous Deployments to Azure App Service

Over the past few years, Microsoft started to heavily invest into DevOps using their Visual Studio Team Services as a platform. The road map of Team Services is very aggressive and it’s almost hard to keep up with their new features since there is one every month. Recently they announced a new feature called Continuous Delivery (still in preview) under Azure App Service in the Azure portal.

The Continuous Delivery feature allows you to easily setup a basic continuous deployment pipeline for ASP.NET or ASP.NET Core web applications.

I am going to assume you already have an Azure subscription and a VSTS account.

Here is how to configure Azure App Service to support continuous delivery.

configure continuous delivery in the Azure portal

Configure your repository of choice. In my case, I’ve got an ASP.NET Core sample application hosted on GitHub.

select repository and the branch

Next, create a project in VSTS so that we can use this project to set up our continuous delivery pipeline.

create a new team services project

Back in the Azure portal setup the build configuration using the VSTS project you created in the previous step. Depending your project type select the web application framework from the drop down menu.

select the build framework and the team services account

Click ok on the Configure Continuous Delivery blade and wait for the magic to happen.


Well, it’s not really magic, behind the scenes Azure will automate the process of creating build and release definitions in VSTS. The same can also be achieved by manually creating definitions and adding build and release tasks.

Build definition created from Azure portal
Release definition created from Azure portal

Once all the options are configured successfully, the Azure portal will show a summary of build and release logs for the Azure Web App. The same summary and logs can also be accessed in VSTS.

The Continuous Delivery feature gives a good start to automate your build and release pipeline. However, as your project matures the continuous delivery pipeline will become more complex. You should then look into extending the build and release definitions, which will give you much more power to control many advanced scenarios.

I am hoping to write more on Team Services, if you want to know more about it contact me on twitter @thivy