Courseiva
Design and implement build and release pipelineseasyMultiple SelectObjective-mapped

AZ-400 Practice Question: Design and implement build and release pipelines

Which TWO of the following are true about multi-stage pipelines in Azure Pipelines?

⚠ Common exam trap

It's easy for candidates to assume stages must be sequential or share the same agent, but Azure Pipelines explicitly supports parallel execution and independent agent allocation per stage.

Answer choices

Why each option matters

Answer the question above first, then reveal the full breakdown to understand why each option is right or wrong.

Correct answer & explanation

Stages can run in parallel if dependencies allow.

Azure Pipelines allows stages to run in parallel when their dependencies are configured appropriately. By default, stages run sequentially, but you can use the 'dependsOn' keyword to define dependencies, and if a stage has no dependencies on another, it can execute concurrently. This enables faster pipeline execution by running independent stages simultaneously.

Answer analysis

Option-by-option breakdown

For each option: why learners choose it and why it is or isn't the right answer here.

  • Stages can run in parallel if dependencies allow.

    Why this is correct

    Stages in a multi-stage pipeline can execute in parallel when they have no dependencies on one another. You explicitly declare this by using `dependsOn: none` on the stage; otherwise, stages default to sequential execution based on implicit dependencies.

  • Each stage can contain only one job.

    Why it's wrong here

    This statement is false because a single stage can contain one or more jobs. Defining multiple jobs inside a stage allows them to run in parallel (if no dependencies exist) or sequentially, each potentially on different agent pools or with different execution requirements.

  • Each stage must run on the same agent.

    Why it's wrong here

    This is incorrect: each stage does not have to use the same agent. You can specify different agent pools (or even different compute targets like Microsoft-hosted vs self-hosted) per job within a stage, and stages themselves can use entirely different infrastructure based on their job definitions.

  • Stages cannot have conditions.

    Why it's wrong here

    Stages absolutely can have conditions. For example, you can set a stage condition like `condition: succeeded()` to run only if all previous stages succeeded, or use custom expressions based on variables, parameters, or build artifacts to control whether a stage executes.

  • They are defined in a single YAML file.

    Why this is correct

    Multi-stage pipelines are defined in a single YAML file (typically azure-pipelines.yml), using the `stages` keyword to structure the entire workflow from build through deployment. Because the definition is code, it lives in version control, allowing the pipeline to be reviewed, branched, and promoted exactly like application source code. This contrasts with older classic build/release definitions that were stored separately in the Azure DevOps service and could not be versioned as part of the repo.

About these practice questions

This AZ-400 question is part of Courseiva's 823-question bank — original exam-style content with full explanations and wrong-answer analysis, never real exam questions or exam dumps. Learn why practice questions differ from exam dumps →

How Courseiva writes practice questions · Editorial policy

JA

Written by Johnson Ajibi, MSc IT Security

Senior Network & Security Engineer · founder of Courseiva

This AZ-400 practice question is part of Courseiva's free Microsoft certification practice question bank. Courseiva provides original exam-style practice questions with explanations, topic-based practice, mock exams, readiness tracking, and study analytics to help learners prepare for the AZ-400 exam.