As Microsoft is seeing it’s customers use Azure Pipelines for enhanced CI/CD functionality, they are dedicated to continually improving Azure Pipelines to deliver new features and meet user needs.
Azure Pipelines is the Continuous Integration and Continuous Delivery (CI/CD) solution for any language, application, or platform. Microsoft is seeing it’s customers use it for both enhanced CI/CD functionality, and as a dedicated CI/CD service to use in their DevOps toolchains.
Some of the features included in Continuous Delivery capabilities and caching for Azure Pipelines, can benefit ISVs in terms of cost, build time and meeting business requirements.
ISVs using multi-stage YAML pipelines can manage deployment workflows in separate pipelines and trigger them using resources. As part of this experience, Microsoft offer support for consuming other pipelines and images from Azure Container Registry (ACR) as resources.
If you have an Azure Pipeline that produces artifacts, those artifacts can be consumed by defining a pipeline resource, and also enable the pipeline to be automatically triggered on the completion of that pipeline resource.
resources:
pipelines:
- pipeline: SmartHotel
source: SmartHotel-CI
trigger:
branches:
- 'releases/*'
- master
You can also use Azure Container Registry (ACR) container images to trigger the execution of a pipeline in Azure Pipelines when a new image is published to ACR.
Complete traceability for both pipelines and ACR container resource is fully supported.
resources:
containers:
- container: MyACR
type: ACR
AzureSubscription: RMPM
resourcegroup: contosoRG
registry: contosodemo
repository: alphaworkz
trigger:
tags:
include:
- 'production*'
A key advantage of continuous delivery of application updates, that ISV can leverage is the ability to quickly push updates into production for microservices. This gives you the ability to quickly respond to new business requirements.
Pipeline Artifacts and Pipeline Caching are also generally available.
Pipeline Artifacts are the new generation of build artifacts: they take advantage of existing services to dramatically reduce the time it takes to store outputs in your pipelines. They can be used to store build outputs and move intermediate files between jobs in your pipeline.
Pipeline Caching can reduce build time and costs by allowing the outputs or downloaded dependencies from one run to be reused in later runs. Caching is especially useful in scenarios where the same dependencies are compiled or downloaded over and over at the start of each run.
For traditional on-premises deployment, you can deploy directly to the VMs or you can use any VM manager solution such as SCVMM, for example.
The SCVMM extension for Azure Pipelines helps you provision, manage, and deploy to your on-premises infrastructure. You can dynamically provision new virtual machines in System Center Virtual Machine Manager (SCVMM) and deploy to those virtual machines using Azure Pipelines.