You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
description: Define stages in your release pipeline and promote changes from one stage to the next.
7
-
ms.custom: devdivchpfy22
8
-
ms.date: 11/29/2023
9
-
author: juliakm
10
-
ms.author: jukullam
11
-
ms.topic: unit
12
-
durationInMinutes: 11
13
-
content: |
14
-
[!include[](includes/2-design-the-pipeline.md)]
15
-
quiz:
16
-
title: Check your knowledge
17
-
questions:
18
-
- content: "Your pipeline includes many tests and quality checks that take several minutes to finish. Which kind of trigger is best for running tests only on code that was peer reviewed?"
19
-
choices:
20
-
- content: "A build completion trigger"
21
-
isCorrect: false
22
-
explanation: "A build completion trigger runs a build when another build, such as one for a dependent component, finishes successfully."
23
-
- content: "A CI trigger or PR trigger"
24
-
isCorrect: true
25
-
explanation: "Use CI and PR triggers to control which branches participate in the overall process. You can use them to run your pipeline only during a pull request or after a pull request is merged into a certain branch, such as `main` or a release branch."
26
-
- content: "A scheduled trigger"
27
-
isCorrect: false
28
-
explanation: "Although you can use a scheduled trigger to run tests regularly, is there a better way to run tests only when they're needed?"
29
-
- content: "What's the best way to pause the pipeline until an approver signs off on a change?"
30
-
choices:
31
-
- content: "Use a release approval."
32
-
isCorrect: true
33
-
explanation: "A release approval pauses the pipeline until an approver accepts or rejects the release."
34
-
- content: "Install a Marketplace extension that provides Azure Pipelines tasks that can pause the pipeline."
35
-
isCorrect: false
36
-
explanation: "Although you might find an extension that can fulfill your need, can you use a built-in mechanism instead?"
37
-
- content: "Ask your approver to look at the change. Then manually trigger the pipeline to run."
38
-
isCorrect: false
39
-
explanation: "Is there an automated way to allow the approver to see the working software and then promote it to the next stage?"
40
-
- content: "You want to deploy your web app to the _Test_ environment each time a build finishes. What's the easiest way to set up the process?"
41
-
choices:
42
-
- content: "Use a scheduled trigger."
43
-
isCorrect: false
44
-
explanation: "Although a scheduled trigger enables you to build your web app and pick up the latest dependencies on a regular schedule, it doesn't trigger your pipeline to run when a build finishes."
45
-
- content: "Watch for build notification emails and manually trigger your build when the other one finishes successfully."
46
-
isCorrect: false
47
-
explanation: "This method is inefficient. Is there a way to trigger the build automatically?"
48
-
- content: "Use a build completion trigger."
49
-
isCorrect: true
50
-
explanation: "A build completion trigger runs a build when another build, such as one for a dependent component, finishes successfully."
description: Define stages in your release pipeline and promote changes from one stage to the next.
7
+
ms.custom: devdivchpfy22
8
+
ms.date: 05/01/2025
9
+
author: juliakm
10
+
ms.author: jukullam
11
+
ms.topic: unit
12
+
durationInMinutes: 11
13
+
content: |
14
+
[!include[](includes/2-design-the-pipeline.md)]
15
+
quiz:
16
+
title: Check your knowledge
17
+
questions:
18
+
- content: "Your pipeline includes many tests and quality checks that take several minutes to finish. Which kind of trigger is best for running tests only on code that was peer reviewed?"
19
+
choices:
20
+
- content: "A build completion trigger"
21
+
isCorrect: false
22
+
explanation: "A build completion trigger runs a build when another build, such as one for a dependent component, finishes successfully."
23
+
- content: "A CI trigger or PR trigger"
24
+
isCorrect: true
25
+
explanation: "Use CI and PR triggers to control which branches participate in the overall process. You can use them to run your pipeline only during a pull request or after a pull request is merged into a certain branch, such as `main` or a release branch."
26
+
- content: "A scheduled trigger"
27
+
isCorrect: false
28
+
explanation: "Although you can use a scheduled trigger to run tests regularly, is there a better way to run tests only when they're needed?"
29
+
- content: "What's the best way to pause the pipeline until an approver signs off on a change?"
30
+
choices:
31
+
- content: "Use a release approval."
32
+
isCorrect: true
33
+
explanation: "A release approval pauses the pipeline until an approver accepts or rejects the release."
34
+
- content: "Install a Marketplace extension that provides Azure Pipelines tasks that can pause the pipeline."
35
+
isCorrect: false
36
+
explanation: "Although you might find an extension that can fulfill your need, can you use a built-in mechanism instead?"
37
+
- content: "Ask your approver to look at the change. Then manually trigger the pipeline to run."
38
+
isCorrect: false
39
+
explanation: "Is there an automated way to allow the approver to see the working software and then promote it to the next stage?"
40
+
- content: "You want to deploy your web app to the _Test_ environment each time a build finishes. What's the easiest way to set up the process?"
41
+
choices:
42
+
- content: "Use a scheduled trigger."
43
+
isCorrect: false
44
+
explanation: "Although a scheduled trigger enables you to build your web app and pick up the latest dependencies on a regular schedule, it doesn't trigger your pipeline to run when a build finishes."
45
+
- content: "Watch for build notification emails and manually trigger your build when the other one finishes successfully."
46
+
isCorrect: false
47
+
explanation: "This method is inefficient. Is there a way to trigger the build automatically?"
48
+
- content: "Use a build completion trigger."
49
+
isCorrect: true
50
+
explanation: "A build completion trigger runs a build when another build, such as one for a dependent component, finishes successfully."
Copy file name to clipboardExpand all lines: learn-pr/azure-devops/create-multi-stage-pipeline/includes/1-introduction.md
+3-3Lines changed: 3 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,14 +1,14 @@
1
-
In [Create a release pipeline with Azure Pipelines](/training/modules/create-release-pipeline?azure-portal=true), 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.
1
+
In [Create a release pipeline in Azure Pipelines](/training/modules/create-release-pipeline?azure-portal=true), 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.
2
2
3
3
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.
4
4
5
5
In this module, you join the Tailspin Toys web team as they design a realistic release pipeline that contains multiple stages. You also learn different ways to control how an artifact is promoted from one stage to the next.
6
6
7
-
A good release-management workflow enables you to release more frequently and more consistently. In practice, you want to define a process that maps to your team's needs. Here you create a basic workflow. That means first designing the environments. The environments define the runtimes of each stage in the pipeline. Then, you deploy the *Space Game* web app to these stages: *Dev*, *Test*, and *Staging*. Each stage deploys the app to its own App Service instance.
7
+
A good release-management workflow lets you release more frequently and more consistently. In practice, you want to define a process that maps to your team's needs. Here, you create a basic workflow. That means first designing the environments. The environments define the runtimes of each stage in the pipeline. Then, you deploy the *Space Game* web app to these stages: *Dev*, *Test*, and *Staging*. Each stage deploys the app to its own App Service instance.
8
8
9
9
## Learning objectives
10
10
11
-
After completing this module, you're able to:
11
+
After completing this module, you should able to:
12
12
13
13
- Identify the *stages*, or major divisions of the pipeline, that you need to implement in a multistage pipeline.
14
14
- Explain when to use conditions, triggers, and approvals to promote changes from one stage to the next.
0 commit comments