Introduction

Completed

In Create a release pipeline with Azure Pipelines, you built a basic release pipeline. That pipeline has a Build stage that builds the artifact, and a Deploy stage that installs the web app on Azure App Service. Mara and Andy built this pipeline as a proof of concept that they showed to the rest of the team.

Of course, an actual release pipeline has more stages. Each stage has its own set of tasks that can potentially take an artifact all the way to production.

In this module, you'll join the Tailspin Toys web team as they design a realistic release pipeline that contains multiple stages. You'll also learn different ways to control how an artifact is promoted from one stage to the next.

A good release-management workflow enables you to release more frequently and more consistently. In practice, you'll want to define a process that maps to your team's needs. Here you'll create a basic workflow. That means first designing the environments. The environments define the runtimes of each stage in the pipeline. You'll then deploy the Space Game web app to these stages: Dev, Test, and Staging. Each stage deploys the app to its own App Service instance.

Learning objectives

In this module, you will:

  • Identify the stages, or major divisions of the pipeline, that you need to implement a multistage pipeline.
  • Understand when to use conditions, triggers, and approvals to promote changes from one stage to the next.
  • Promote a build through these stages: Build, Dev, Test, and Staging.

Prerequisites

The modules in this learning path form a progression. To follow the progression from the beginning, be sure to first complete these learning paths:

We also recommend you start at the beginning of this learning path: Deploy applications with Azure DevOps.

If you want to go through just this module, you need to set up a development environment on your Windows, macOS, or Linux system. You need:

You can get started with Azure and Azure DevOps for free. You don't need an Azure subscription to work with Azure DevOps, but here, to deploy to Azure resources that exist in your Azure subscription, you'll use Azure DevOps.

This environment lets you complete the exercises in this and future modules. You can also use it to apply your new skills to your own projects.

Note

Keep in mind that you can use Azure DevOps to build and deploy almost any kind of application written in any language. In this module, you'll be working with a .NET Core application written in C#.

You don't need to be an expert in .NET or C# to complete this module. You can apply the patterns you learn here to your own projects that use your favorite programming languages and frameworks.

Meet the team

You met the Space Game web team at Tailspin Toys in previous modules. As a refresher, here's who you'll work with in this module.

Cartoon depiction of Andy

Andy is the development lead.

Cartoon depiction of Amita

Amita is in QA.

Cartoon depiction of Tim

Tim is in operations.

Cartoon depiction of Mara

Mara just joined as a developer and reports to Andy.

Mara has prior experience with DevOps. She's helping the team adopt a more automated process that uses Azure DevOps.