In this blog post, we are going to look at automated application deployment to VMs using continuous deployment in Azure DevOps.
Azure DevOps Services is a rebranded product that used to be called Microsoft Studio Online or Visual Studio Team Services (VSTS) in the early days. You still can see the URL redirection, which links to https://app.vssps.visualstudio.com and then redirects to https://dev.azure.com/.
Azure DevOps provides a range of services, but we are currently only using four of them:
- Repos
- Pipelines
- Test Plans
- Artifacts
Repos provides the repositories for your Azure DevOps projects. You can import the project artifacts in Visual Studio Code, for example, or other editors.
Pipelines creates your workflow of software builds and releases, connections to targets and pre and post-requirements. You can pull your packages from Github or other repositories.
Test Plans lets you do various test runs and analyse the logs and different errors during your deployment.
Artifacts enables you to share your packages on different platforms.
In order to deploy a software package, you need a deployment group connected to the project. Microsoft Azure lets you deploy different groups and install a target agent to connect the VMs to your project in Azure DevOps Services.
You can create different pools of existing VMs or deploy a new VM pool with ARM services in Microsoft Azure. But either way you need to install the target agent, which can be installed on Microsoft Windows or Linux OS. First, you need to allow the ARM outputs extension to be installed in your Azure DevOps account.