News Blog /

ISVs can now leverage new YAML CD features in Azure Pipelines to test, build and ship code to any target

by Spanish Point - Aug 27, 2020
ISVs can now leverage new YAML CD features in Azure Pipelines to test, build and ship code to any target

As Azure releases more features and technologies, ISVs can quickly and easily build these into their applications. In April 2020, Microsoft announced the general availability of the Azure Pipelines YAML CD features. CI/CD and Azure Pipelines can make the process of building and deploying highly efficient. This addition offers a more unified YAML experience to configure each pipeline to do CI, CD, or CI and CD together.


Modern cloud technologies are being met with modern development practices such as CI/CD. ISVs who are embracing cloud modernization can build and deploy innovations to their customers faster as development teams adopt continuous integration / continuous development processes through Azure Pipelines.

To access the full potential of Azure, it is advisable to build in this modern approach. Using CI/CD and Azure pipelines, teams can identify bugs quickly, ensure consistent quality and deploy new features without waiting for major updates. All significantly increasing efficiency and reducing downtime. In addition, CI/CD integrates with Agile development practices.

Our own teams at Spanish Point Technologies use CI/CD when building applications for ISVs. In our recent Developer Conversations interview, Curnan Reidy, the Team Leader for Software Development and Matching Engine Product Manager at Spanish Point shared that “We began adopting the CI/CD approach about four years ago and have built or migrated our custom applications to this process. Key projects such as the Next Generation ISWC system are being built using CI/CD.”


Learn about CI/CD and Azure

As Azure releases more features and technologies like this, ISVs can quickly and easily build these into their applications. Speaking of this Curnan Reidy shared that “Azure continues to release new solutions and features that are highly innovative. Currently, we use a range of features. Two of note are Azure Search, which allows for fast search queries and Azure Databricks which supports the processing of large volumes of data”.


Releases vs. YAML pipelines

Azure Pipelines supports continuous integration (CI) and continuous delivery (CD) to test, build and ship your code to any target – repeatedly and consistently. You accomplish this by defining a pipeline. CD pipelines can be authored using the YAML syntax or through the visual user interface (Releases).

Classic vs YAML pipelines

You can create and configure release pipelines in the web portal with the visual user interface editor (Releases). A release pipeline can consume and deploy the artifacts produced by the CI pipelines to your deployment targets.

Additionally, you can define the CI/CD workflows in a YAML file – azure-pipelines.yml. The pipelines file is versioned with your code and it follows the same branching structure. As result, you get validation of the changes through code reviews in pull requests and branch build policies. Most importantly, the changes are in the version control with the rest of the codebase so you can easily identify the issue.


YAML CD features introduces several new features that are available for all organizations using multi-stage YAML pipelines. Some of the highlights include.

1.Multi-stage YAML pipelines (for CI and CD)

Stages are the major divisions in a pipeline and exampled of these stages include; ‘build app’ or ‘run tests.’ They create a type of boundary in the pipeline at which you can pause and perform different checks. Stages can also be arranged into a dependency graph such as ‘run dev stage before the QA”.

2. Environments and deployment strategies

A group of resources which can be targeted for deployment from a pipeline is known as an environment. Environments can include Kubernetes clusters, Azure web apps, virtual machines, databases and more. Typical examples of environment names are; Dev, Test, QA, Staging, and Production.

3. Kubernetes and Virtual Machine resources in environment

Kubernetes resource view provides the status of objects within the mapped Kubernetes namespace. It overlays pipeline traceability on top so you can trace back from the Kubernetes object to the pipeline and to the commit. Virtual machine resource view lets you add your VMs that are on any cloud or on-premises. As a result, rollout application updates and track deployments to the virtual machines.

4. Approvals and checks on resources

Pipelines rely on resources like environments, service connections and library items. Checks facilitate the owner to control whether a stage in a pipeline can or cannot consume the resource. An owner can define the checks that must be met prior to resource consumption beginning.

5. Review apps for collaboration

Review apps for collaboration works by deploying every pull request from your git repository to a dynamically created resource in an environment. The team can see the changes in the PR, as well as how they work with other dependent services before they are merged into the main branch. As a result, you can shift-left the code quality and improve productivity.


Learn about CI/CD and Azure

As Azure releases more features and technologies like this, ISVs can quickly and easily build these into their applications. Speaking of this Curnan Reidy shared that “Azure continues to release new solutions and features that are highly innovative. Currently, we use a range of features. Two of note are Azure Search, which allows for fast search queries and Azure Databricks which supports the processing of large volumes of data”.

Want to learn about cloud modernization using CI/CD?
Contact us
Or