Build Azure Pipeline To Your DotVVM Application

What is CI/CD?

 
Continuous integration (CI) and continuous delivery (CD) embody a culture, set of operating principles, and collection of practices that enable application development teams to deliver code changes more frequently and reliably. The implementation is also known as the CI/CD pipeline.
 

Azure Pipeline for DevOps

 
Azure Pipelines is a continuous delivery tool, designed to build code in popular languages, test them, and then deliver them to your choice of endpoint. Like other CI/CD systems, it’s also extensible, with a library of tasks and extensions to add support for test tools and for integration with your devops tool chain.
 

DotVVM CI/CD Pipeline

 
In this article we will go through steps required to enable CI/CD to your DotVVM web application.
 
To keep it short and focus on CI/CD pipeline we will not show the steps required to create DevOps project on Azure DevOps. If you want to know more you can try this Lab.
  1. Go to devops.azure.com and login.
  2. Open your devops project and go to Pipelines then click on Create Pipeline
  3. Select where to connect to get your code. Here I host my DotVVM application on Azrue Repos Git.

    Build Azure Pipeline To Your DotVVM Application
  4. Azure displays all available repositories in the selected host. Select your DotVVM repository.
  5. Once you select your target repository, Azure pipeline will go to configure your pipeline step where you select your application type. If the target application type is not listed click in show more button.
    For your DotVVM application you can select ASP.NET Core (.Net Framework)
     
    Build Azure Pipeline To Your DotVVM Application

  6. In the  review step, Azure displays your pipeline in YAML format. You can edit if you want manually or click on show assistant in upper right corner to select the tasks you want to to add to your pipeline.

    Build Azure Pipeline To Your DotVVM Application

  7. From task list, select .Net Core task to publish your DotVVM web application.

     Command : publish
     Publish web project : checked
     Zip published projects : checked
     Add project's folder name to publish path : checked

    Build Azure Pipeline To Your DotVVM Application

  8. From Task list select Azure App Service Deploy task to deploy your DotVVM to azure app service with the following configuration:

    Connection Type - Azure Resource Manager
    Azure subscription - select one from your available subscriptions
    App Service type - Web App on Windows
    App Service name - select your target App service from App services available in selected subscription. If the list is empty you have to create App service first before creating your pipeline.

    Build Azure Pipeline To Your DotVVM Application

    Then click Add button to add this task to your pipeline.

  9. Click Save and run to save your pipeline for future updates and run it immediately. If you don't want to run it, just click on down arrow and click save.

    Build Azure Pipeline To Your DotVVM Application

  10. Azure will commit this pipeline to your master branch or you can create a separate branch for this commit.

    Build Azure Pipeline To Your DotVVM Application
Now your pipeline is configured and ready to run and deploy your DotVVM application to target Azure App service. After each push you do to  the master branch of your repository your Azure pipeline will be triggered and deploy a new version of your DotVVM application .
 

Summary

 
In this article we showed a simple way to configure an Azure Pipeline to enable CI/CD for your DotVVM application to be deployed to a specified Azure App Service.