Microsoft has released an updated version of Azure DevOps Server, while Azure Pipelines now boasts improved continuous delivery capabilities and caching. The announcements were timed to coincide with the firm’s Ignite developer shindig in Orlando.
Azure DevOps Server 2019 may only have been around for a few months, but it has already seen one update, and now Azure DevOps Server 2019 Update 1.1 RC delivers some bug fixes for the previous update. The platform is Microsoft’s on-premises DevOps offering, formerly known as Team Foundation Server.
According to Microsoft this is a go-live release, meaning it is supported for production instances, and customers will be able to upgrade to the final release.
Meanwhile, the cloud-hosted Azure Pipelines has been updated with some features requested by developers. For example, developers using multi-stage YAML pipelines can now manage deployment workflows in separate pipelines and trigger these using resources.
As part of this Microsoft has added support for consuming other pipelines and images from Azure Container Registry (ACR) as resources. This means that if you have an Azure Pipeline that produces artifacts, you can consume the artifacts by defining a pipeline resource, and the pipeline can be automatically triggered on the completion of that pipeline resource.
Microsoft has also announced two new deployment strategies as part of this update – canary for Azure Kubernetes Service (AKS), and rolling for Virtual Machines, with the latter in private preview.
As you would expect, the canary deployment strategy for AKS deploys a newer version of an application next to the existing stable version, but only a portion of traffic is routed to the canary until it meets various criteria to determine its stability. Support for blue-green deployments and other resource types will be delivered in the next few months, according to Microsoft.
Pipeline Artifacts and Pipeline Caching are also now generally available. Pipeline Artifacts are described as the new generation of build artifacts, allowing developers to store outputs and move intermediate files between jobs in their pipeline.
Pipeline Caching reduces build time by allowing outputs or downloaded dependencies from one run to be reused in later runs. This is claimed to be useful in scenarios where the same dependencies are compiled or downloaded over and over at the start of each run.
For more details on the updates to Azure Pipelines, see Microsoft’s DevOps blog.