Skip to content

Commit ecdcf34

Browse files
Merge pull request #51093 from lootle1/MR121
Technical Review 1058592: Manage release cadence in Azure Pipelines b…
2 parents 492b0a2 + 18e8020 commit ecdcf34

15 files changed

+269
-260
lines changed
Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,15 @@
1-
### YamlMime:ModuleUnit
2-
uid: learn.azdo.manage-release-cadence.1-introduction
3-
title: Introduction
4-
metadata:
5-
title: Introduction
6-
description: Introduction
7-
ms.date: 02/05/2024
8-
author: ramiMSFT
9-
ms.author: rabououn
10-
ms.custom: devdivchpfy22
11-
ms.topic: unit
12-
durationInMinutes: 1
13-
content: |
14-
[!include[](includes/1-introduction.md)]
15-
1+
### YamlMime:ModuleUnit
2+
uid: learn.azdo.manage-release-cadence.1-introduction
3+
title: Introduction
4+
metadata:
5+
title: Introduction
6+
description: Introduction
7+
ms.date: 06/24/2025
8+
author: ramiMSFT
9+
ms.author: rabououn
10+
ms.custom: devdivchpfy22
11+
ms.topic: unit
12+
durationInMinutes: 1
13+
content: |
14+
[!include[](includes/1-introduction.md)]
15+
Lines changed: 51 additions & 51 deletions
Original file line numberDiff line numberDiff line change
@@ -1,51 +1,51 @@
1-
### YamlMime:ModuleUnit
2-
uid: learn.azdo.manage-release-cadence.2-what-are-deployment-patterns
3-
title: What are deployment patterns?
4-
metadata:
5-
title: What are deployment patterns?
6-
description: Choose an appropriate deployment pattern that helps you minimize downtime and roll out new features progressively.
7-
ms.date: 02/05/2024
8-
author: ramiMSFT
9-
ms.author: rabououn
10-
ms.custom: devdivchpfy22
11-
ms.topic: unit
12-
durationInMinutes: 5
13-
content: |
14-
[!include[](includes/2-what-are-deployment-patterns.md)]
15-
quiz:
16-
title: Check your knowledge
17-
questions:
18-
- content: "The marketing team has asked you to add a banner to your company's website. They have two versions of this banner. They want to know which version produces more clickthroughs. Which deployment pattern might you use to help the marketing team identify the better version?"
19-
choices:
20-
- content: "Blue-green deployment"
21-
isCorrect: false
22-
explanation: "A blue-green deployment is better suited to helping you reduce downtime."
23-
- content: "A/B testing"
24-
isCorrect: true
25-
explanation: "With A/B testing, you could randomly show both versions of the website to users. Then the marketing team can use statistical analysis to decide which version performs better."
26-
- content: "Feature toggles"
27-
isCorrect: false
28-
explanation: "Feature toggles are better suited to exposing new features to a small, select number of users to see how they react."
29-
- content: "You have a new feature for your website, and you're ready to deploy it. However, this feature is risky because it changes the way your users interact with the site. Which deployment patterns might you use to release to a small group of early adopters who have signed up to see new features?"
30-
choices:
31-
- content: "Canary release or progressive-exposure deployment"
32-
isCorrect: true
33-
explanation: "Both of these deployment patterns expose a new feature to only a small subset of users. After you validate the feature with this smaller subset, you can then progressively roll out to a larger set of users."
34-
- content: "A/B testing or a dark launch"
35-
isCorrect: false
36-
explanation: "A/B testing is typically used to sample users at random. In a dark launch, test users typically don't know that they're testing new features."
37-
- content: "Blue-green deployment or feature toggles"
38-
isCorrect: false
39-
explanation: "Although you might use a feature toggle to expose your feature to select users, a blue-green deployment is meant to help you reduce downtime."
40-
- content: "You're not sure how your users will react to your new feature. You want to release your feature to a small, random sample of users to see how they react. Which deployment pattern might you use?"
41-
choices:
42-
- content: "Blue-green deployment"
43-
isCorrect: false
44-
explanation: "A blue-green deployment is better suited to helping you reduce downtime."
45-
- content: "Dark launch"
46-
isCorrect: true
47-
explanation: "Because you want a random sample, a dark launch can help you gradually release your feature while you collect feedback and test performance."
48-
- content: "A/B testing"
49-
isCorrect: false
50-
explanation: "Although A/B testing is typically used to sample users at random, it's more commonly used to test two or more variations of a feature against each other."
51-
1+
### YamlMime:ModuleUnit
2+
uid: learn.azdo.manage-release-cadence.2-what-are-deployment-patterns
3+
title: What are deployment patterns?
4+
metadata:
5+
title: What are deployment patterns?
6+
description: Choose an appropriate deployment pattern that helps you minimize downtime and roll out new features progressively.
7+
ms.date: 06/24/2025
8+
author: ramiMSFT
9+
ms.author: rabououn
10+
ms.custom: devdivchpfy22
11+
ms.topic: unit
12+
durationInMinutes: 5
13+
content: |
14+
[!include[](includes/2-what-are-deployment-patterns.md)]
15+
quiz:
16+
title: Check your knowledge
17+
questions:
18+
- content: "The marketing team has asked you to add a banner to your company's website. They have two versions of this banner. They want to know which version produces more clickthroughs. Which deployment pattern might you use to help the marketing team identify the better version?"
19+
choices:
20+
- content: "Blue-green deployment"
21+
isCorrect: false
22+
explanation: "A blue-green deployment is better suited to helping you reduce downtime."
23+
- content: "A/B testing"
24+
isCorrect: true
25+
explanation: "With A/B testing, you could randomly show both versions of the website to users. Then the marketing team can use statistical analysis to decide which version performs better."
26+
- content: "Feature toggles"
27+
isCorrect: false
28+
explanation: "Feature toggles are better suited to exposing new features to a small and select number of users to see how they react."
29+
- content: "You have a new feature for your website, and you're ready to deploy it. However, this feature is risky because it changes the way your users interact with the site. Which deployment patterns might you use to release to a small group of early adopters who have signed up to see new features?"
30+
choices:
31+
- content: "Canary release or progressive-exposure deployment"
32+
isCorrect: true
33+
explanation: "Both of these deployment patterns expose a new feature to only a small subset of users. After you validate the feature with this smaller subset, you can then progressively roll out to a larger set of users."
34+
- content: "A/B testing or a dark launch"
35+
isCorrect: false
36+
explanation: "A/B testing is typically used to sample users at random. In a dark launch, test users typically don't know that they're testing new features."
37+
- content: "Blue-green deployment or feature toggles"
38+
isCorrect: false
39+
explanation: "Although you might use a feature toggle to expose your feature to select users, a blue-green deployment is meant to help you reduce downtime."
40+
- content: "You're not sure how your users will react to your new feature. You want to release your feature to a small, random sample of users to see how they react. Which deployment pattern might you use?"
41+
choices:
42+
- content: "Blue-green deployment"
43+
isCorrect: false
44+
explanation: "A blue-green deployment is better suited to helping you reduce downtime."
45+
- content: "Dark launch"
46+
isCorrect: true
47+
explanation: "Because you want a random sample, a dark launch can help you gradually release your feature while you collect feedback and test performance."
48+
- content: "A/B testing"
49+
isCorrect: false
50+
explanation: "Although A/B testing is typically used to sample users at random, it's more commonly used to test two or more variations of a feature against each other."
51+
Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,15 @@
1-
### YamlMime:ModuleUnit
2-
uid: learn.azdo.manage-release-cadence.3-set-up-environment
3-
title: Exercise - Set up your environment
4-
metadata:
5-
title: Exercise - Set up your environment
6-
description: Create your Azure DevOps project and Azure resources.
7-
ms.date: 02/05/2024
8-
author: ramiMSFT
9-
ms.author: rabououn
10-
ms.custom: devdivchpfy22, devx-track-azurecli
11-
ms.topic: unit
12-
durationInMinutes: 20
13-
content: |
14-
[!include[](includes/3-set-up-environment.md)]
15-
1+
### YamlMime:ModuleUnit
2+
uid: learn.azdo.manage-release-cadence.3-set-up-environment
3+
title: Exercise - Set up your environment
4+
metadata:
5+
title: Exercise - Set up your environment
6+
description: Create your Azure DevOps project and Azure resources.
7+
ms.date: 06/24/2025
8+
author: ramiMSFT
9+
ms.author: rabououn
10+
ms.custom: devdivchpfy22, devx-track-azurecli
11+
ms.topic: unit
12+
durationInMinutes: 20
13+
content: |
14+
[!include[](includes/3-set-up-environment.md)]
15+
Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,15 @@
1-
### YamlMime:ModuleUnit
2-
uid: learn.azdo.manage-release-cadence.4-implement-blue-green-deployment
3-
title: Exercise - Implement the blue-green deployment pattern
4-
metadata:
5-
title: Exercise - Implement the blue-green deployment pattern
6-
description: Implement the blue-green deployment pattern in your pipeline by using deployment slots.
7-
ms.date: 02/05/2024
8-
author: ramiMSFT
9-
ms.author: rabououn
10-
ms.custom: devdivchpfy22
11-
ms.topic: unit
12-
durationInMinutes: 10
13-
content: |
14-
[!include[](includes/4-implement-blue-green-deployment.md)]
15-
1+
### YamlMime:ModuleUnit
2+
uid: learn.azdo.manage-release-cadence.4-implement-blue-green-deployment
3+
title: Exercise - Implement the blue-green deployment pattern
4+
metadata:
5+
title: Exercise - Implement the blue-green deployment pattern
6+
description: Implement the blue-green deployment pattern in your pipeline by using deployment slots.
7+
ms.date: 06/24/2025
8+
author: ramiMSFT
9+
ms.author: rabououn
10+
ms.custom: devdivchpfy22
11+
ms.topic: unit
12+
durationInMinutes: 10
13+
content: |
14+
[!include[](includes/4-implement-blue-green-deployment.md)]
15+
Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,15 @@
1-
### YamlMime:ModuleUnit
2-
uid: learn.azdo.manage-release-cadence.5-push-a-change
3-
title: Exercise - Push a change through the pipeline
4-
metadata:
5-
title: Exercise - Push a change through the pipeline
6-
description: Add a few visual changes to your application to see deployment slots in action.
7-
ms.date: 02/05/2024
8-
author: ramiMSFT
9-
ms.author: rabououn
10-
ms.custom: devdivchpfy22
11-
ms.topic: unit
12-
durationInMinutes: 14
13-
content: |
14-
[!include[](includes/5-push-a-change.md)]
15-
1+
### YamlMime:ModuleUnit
2+
uid: learn.azdo.manage-release-cadence.5-push-a-change
3+
title: Exercise - Push a change through the pipeline
4+
metadata:
5+
title: Exercise - Push a change through the pipeline
6+
description: Add a few visual changes to your application to see deployment slots in action.
7+
ms.date: 06/24/2025
8+
author: ramiMSFT
9+
ms.author: rabououn
10+
ms.custom: devdivchpfy22
11+
ms.topic: unit
12+
durationInMinutes: 14
13+
content: |
14+
[!include[](includes/5-push-a-change.md)]
15+
Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,15 @@
1-
### YamlMime:ModuleUnit
2-
uid: learn.azdo.manage-release-cadence.6-clean-up-environment
3-
title: Exercise - Clean up your environment
4-
metadata:
5-
title: Exercise - Clean up your environment
6-
description: Clean up your Azure DevOps project and your Azure resources.
7-
ms.date: 02/05/2024
8-
author: ramiMSFT
9-
ms.author: rabououn
10-
ms.custom: devdivchpfy22
11-
ms.topic: unit
12-
durationInMinutes: 7
13-
content: |
14-
[!include[](includes/6-clean-up-environment.md)]
15-
1+
### YamlMime:ModuleUnit
2+
uid: learn.azdo.manage-release-cadence.6-clean-up-environment
3+
title: Exercise - Clean up your environment
4+
metadata:
5+
title: Exercise - Clean up your environment
6+
description: Clean up your Azure DevOps project and your Azure resources.
7+
ms.date: 06/24/2025
8+
author: ramiMSFT
9+
ms.author: rabououn
10+
ms.custom: devdivchpfy22
11+
ms.topic: unit
12+
durationInMinutes: 7
13+
content: |
14+
[!include[](includes/6-clean-up-environment.md)]
15+
Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,16 @@
1-
### YamlMime:ModuleUnit
2-
uid: learn.azdo.manage-release-cadence.7-summary
3-
title: Summary
4-
metadata:
5-
title: Summary
6-
description: Summary
7-
ms.date: 02/05/2024
8-
author: ramiMSFT
9-
ms.author: rabououn
10-
ms.custom: devdivchpfy22
11-
ms.topic: unit
12-
show_latex: true
13-
durationInMinutes: 3
14-
content: |
15-
[!include[](includes/7-summary.md)]
16-
1+
### YamlMime:ModuleUnit
2+
uid: learn.azdo.manage-release-cadence.7-summary
3+
title: Summary
4+
metadata:
5+
title: Summary
6+
description: Summary
7+
ms.date: 06/24/2025
8+
author: ramiMSFT
9+
ms.author: rabououn
10+
ms.custom: devdivchpfy22
11+
ms.topic: unit
12+
show_latex: true
13+
durationInMinutes: 3
14+
content: |
15+
[!include[](includes/7-summary.md)]
16+

learn-pr/azure-devops/manage-release-cadence/includes/1-introduction.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
In this learning path, you've been helping the Tailspin Toys team set up an automated release pipeline. The pipeline includes multiple stages, and both functional and nonfunctional tests.
22

3-
In this module, you help the team solve another problem, which is how to implement a deployment pattern to release to production in a way that's best for the company and their users. You'll help them evaluate the possibilities and then implement the one they choose.
3+
In this module, you help the team solve another problem, which is how to implement a deployment pattern to release to production in a way that's best for the company and their users. You'll help them evaluate the possibilities, and then implement the one they choose.
44

55
## Learning objectives
66

@@ -16,18 +16,18 @@ The modules in this learning path are part of a progression.
1616

1717
To follow the progression from the beginning, be sure to first complete these learning paths:
1818

19-
* [Get started with Azure DevOps](../../../paths/evolve-your-devops-practices/index.yml?azure-portal=true)
20-
* [Build applications with Azure DevOps](../../../paths/build-applications-with-azure-devops/index.yml?azure-portal=true)
19+
- [Get started with Azure DevOps](../../../paths/evolve-your-devops-practices/index.yml?azure-portal=true)
20+
- [Build applications with Azure DevOps](../../../paths/build-applications-with-azure-devops/index.yml?azure-portal=true)
2121

2222
We also recommend that you start at the beginning of this learning path, [Deploy applications with Azure DevOps](../../../paths/deploy-applications-with-azure-devops/index.yml?azure-portal=true).
2323

2424
If you want to go through just this module, then you need to set up a development environment on your Windows, macOS, or Linux system. You'll need the following resources:
2525

26-
- An [Azure DevOps organization](/azure/devops/pipelines/get-started/pipelines-sign-up) with access to [parallel jobs](/azure/devops/pipelines/licensing/concurrent-jobs). If your organization does not have access to parallel jobs, you can request parallel jobs for free for public or private projects using [this form](https://aka.ms/azpipelines-parallelism-request). Your request will take 2-3 business days.
26+
- An [Azure DevOps organization](/azure/devops/pipelines/get-started/pipelines-sign-up) with access to [parallel jobs](/azure/devops/pipelines/licensing/concurrent-jobs). If your organization doesn't have access to parallel jobs, you can request parallel jobs for free for public or private projects using [this form](https://aka.ms/azpipelines-parallelism-request). Your request will take 2-3 business days.
2727
- An [Azure subscription](https://azure.microsoft.com/free/?azure-portal=true)
2828
- A [GitHub](https://github.com/join?azure-portal=true) account
2929
- [Visual Studio Code](https://code.visualstudio.com?azure-portal=true)
30-
- [.NET 6.0 SDK](https://dotnet.microsoft.com/download/dotnet/6.0?azure-portal=true)
30+
- [.NET 8.0 SDK](https://dotnet.microsoft.com/download/dotnet/8.0)
3131
- [Git](https://git-scm.com/downloads?azure-portal=true)
3232

3333
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 you'll use Azure DevOps to deploy to resources that exist in your Azure subscription.

0 commit comments

Comments
 (0)