Azure DevOpsIntermediate27 submodules

Azure Pipelines Architecture and YAML

Model repeatable delivery workflows in Azure Pipelines using triggers, agents, jobs, steps, stages, variables, parameters, expressions, templates, dependencies, and outputs.

From concept to production evidence

Keep orchestration declarative, separate compile-time parameters from runtime state, use templates for governed reuse, pass only explicit outputs, and make stage dependencies reflect the release control model.

Learning outcomes

  • Explain pipeline execution hierarchy
  • Choose hosted or self-hosted agents
  • Write reliable YAML syntax and triggers
  • Use variables, parameters, conditions, and expressions
  • Create reusable templates and multi-stage dependencies

Azure Pipelines Architecture and YAML end-to-end flow

Use this sequence as the operating backbone for every submodule note and hands-on exercise.

  1. 01
    Trigger runAzure Pipelines Architecture and YAML stage 1: trigger run with an auditable result before the next stage begins.
  2. 02
    Resolve templateAzure Pipelines Architecture and YAML stage 2: resolve template with an auditable result before the next stage begins.
  3. 03
    Select agentAzure Pipelines Architecture and YAML stage 3: select agent with an auditable result before the next stage begins.
  4. 04
    Execute jobs and stepsAzure Pipelines Architecture and YAML stage 4: execute jobs and steps with an auditable result before the next stage begins.
  5. 05
    Publish outputsAzure Pipelines Architecture and YAML stage 5: publish outputs with an auditable result before the next stage begins.
  6. 06
    Evaluate dependent stageAzure Pipelines Architecture and YAML stage 6: evaluate dependent stage with an auditable result before the next stage begins.

Architecture diagrams from Microsoft documentation

Use these diagrams beside the original Edukron notes and flows to compare the learning model with the official product and architecture view.

Official Microsoft diagram showing Azure Pipelines processing a run and sending jobs to agents.

Azure Pipelines run overview

The service processes a run, allocates jobs to agents, and collects step logs, artifacts, test evidence, and the final job result.

Official Microsoft diagram showing YAML template expansion during Azure Pipelines processing.

Azure Pipelines template expansion

Before jobs run, Azure Pipelines expands templates, resolves compile-time expressions, evaluates stage dependencies, authorizes resources, and creates runtime jobs.

Build a reusable multi-stage YAML pipeline

  1. Define triggers and parameters
  2. Create job and stage templates
  3. Select agent pools
  4. Pass outputs across dependencies
  5. Test conditions and matrix execution

27 full submodule notes

Read in order
01

CI pipelines

CI pipelines governs how a request is named, addressed, routed, filtered, transported, protected, and delivered to a healthy endpoint within Azure Pipelines Architecture and YAML. It is not an isolated definition: its value appears when it supports keep orchestration declarative, separate compile-time parameters from runtime state, use templates for governed reuse, pass only explicit outputs, and make stage dependencies reflect the release control model.

Open full notes
02

CD pipelines

CD pipelines governs how a request is named, addressed, routed, filtered, transported, protected, and delivered to a healthy endpoint within Azure Pipelines Architecture and YAML. It is not an isolated definition: its value appears when it supports keep orchestration declarative, separate compile-time parameters from runtime state, use templates for governed reuse, pass only explicit outputs, and make stage dependencies reflect the release control model.

Open full notes
03

Classic pipelines

Classic pipelines governs how a request is named, addressed, routed, filtered, transported, protected, and delivered to a healthy endpoint within Azure Pipelines Architecture and YAML. It is not an isolated definition: its value appears when it supports keep orchestration declarative, separate compile-time parameters from runtime state, use templates for governed reuse, pass only explicit outputs, and make stage dependencies reflect the release control model.

Open full notes
04

YAML pipelines

YAML pipelines governs how a request is named, addressed, routed, filtered, transported, protected, and delivered to a healthy endpoint within Azure Pipelines Architecture and YAML. It is not an isolated definition: its value appears when it supports keep orchestration declarative, separate compile-time parameters from runtime state, use templates for governed reuse, pass only explicit outputs, and make stage dependencies reflect the release control model.

Open full notes
05

Pipeline triggers

Pipeline triggers governs how a request is named, addressed, routed, filtered, transported, protected, and delivered to a healthy endpoint within Azure Pipelines Architecture and YAML. It is not an isolated definition: its value appears when it supports keep orchestration declarative, separate compile-time parameters from runtime state, use templates for governed reuse, pass only explicit outputs, and make stage dependencies reflect the release control model.

Open full notes
06

Agents

Agents provides a concrete platform capability that must be configured, secured, validated, observed, and owned throughout its lifecycle within Azure Pipelines Architecture and YAML. It is not an isolated definition: its value appears when it supports keep orchestration declarative, separate compile-time parameters from runtime state, use templates for governed reuse, pass only explicit outputs, and make stage dependencies reflect the release control model.

Open full notes
07

Agent pools

Agent pools provides a concrete platform capability that must be configured, secured, validated, observed, and owned throughout its lifecycle within Azure Pipelines Architecture and YAML. It is not an isolated definition: its value appears when it supports keep orchestration declarative, separate compile-time parameters from runtime state, use templates for governed reuse, pass only explicit outputs, and make stage dependencies reflect the release control model.

Open full notes
08

Microsoft-hosted agents

Microsoft-hosted agents provides a concrete platform capability that must be configured, secured, validated, observed, and owned throughout its lifecycle within Azure Pipelines Architecture and YAML. It is not an isolated definition: its value appears when it supports keep orchestration declarative, separate compile-time parameters from runtime state, use templates for governed reuse, pass only explicit outputs, and make stage dependencies reflect the release control model.

Open full notes
09

Self-hosted agents

Self-hosted agents provides a concrete platform capability that must be configured, secured, validated, observed, and owned throughout its lifecycle within Azure Pipelines Architecture and YAML. It is not an isolated definition: its value appears when it supports keep orchestration declarative, separate compile-time parameters from runtime state, use templates for governed reuse, pass only explicit outputs, and make stage dependencies reflect the release control model.

Open full notes
10

Jobs

Jobs provides a concrete platform capability that must be configured, secured, validated, observed, and owned throughout its lifecycle within Azure Pipelines Architecture and YAML. It is not an isolated definition: its value appears when it supports keep orchestration declarative, separate compile-time parameters from runtime state, use templates for governed reuse, pass only explicit outputs, and make stage dependencies reflect the release control model.

Open full notes
11

Steps

Steps provides a concrete platform capability that must be configured, secured, validated, observed, and owned throughout its lifecycle within Azure Pipelines Architecture and YAML. It is not an isolated definition: its value appears when it supports keep orchestration declarative, separate compile-time parameters from runtime state, use templates for governed reuse, pass only explicit outputs, and make stage dependencies reflect the release control model.

Open full notes
12

Tasks

Tasks provides a concrete platform capability that must be configured, secured, validated, observed, and owned throughout its lifecycle within Azure Pipelines Architecture and YAML. It is not an isolated definition: its value appears when it supports keep orchestration declarative, separate compile-time parameters from runtime state, use templates for governed reuse, pass only explicit outputs, and make stage dependencies reflect the release control model.

Open full notes
13

Stages

Stages provides a concrete platform capability that must be configured, secured, validated, observed, and owned throughout its lifecycle within Azure Pipelines Architecture and YAML. It is not an isolated definition: its value appears when it supports keep orchestration declarative, separate compile-time parameters from runtime state, use templates for governed reuse, pass only explicit outputs, and make stage dependencies reflect the release control model.

Open full notes
14

YAML syntax

YAML syntax turns a manual or repeated decision into versioned, parameterized, testable, and observable execution within Azure Pipelines Architecture and YAML. It is not an isolated definition: its value appears when it supports keep orchestration declarative, separate compile-time parameters from runtime state, use templates for governed reuse, pass only explicit outputs, and make stage dependencies reflect the release control model.

Open full notes
15

Variables

Variables turns a manual or repeated decision into versioned, parameterized, testable, and observable execution within Azure Pipelines Architecture and YAML. It is not an isolated definition: its value appears when it supports keep orchestration declarative, separate compile-time parameters from runtime state, use templates for governed reuse, pass only explicit outputs, and make stage dependencies reflect the release control model.

Open full notes
16

Parameters

Parameters turns a manual or repeated decision into versioned, parameterized, testable, and observable execution within Azure Pipelines Architecture and YAML. It is not an isolated definition: its value appears when it supports keep orchestration declarative, separate compile-time parameters from runtime state, use templates for governed reuse, pass only explicit outputs, and make stage dependencies reflect the release control model.

Open full notes
17

Runtime parameters

Runtime parameters turns a manual or repeated decision into versioned, parameterized, testable, and observable execution within Azure Pipelines Architecture and YAML. It is not an isolated definition: its value appears when it supports keep orchestration declarative, separate compile-time parameters from runtime state, use templates for governed reuse, pass only explicit outputs, and make stage dependencies reflect the release control model.

Open full notes
18

Conditions

Conditions turns a manual or repeated decision into versioned, parameterized, testable, and observable execution within Azure Pipelines Architecture and YAML. It is not an isolated definition: its value appears when it supports keep orchestration declarative, separate compile-time parameters from runtime state, use templates for governed reuse, pass only explicit outputs, and make stage dependencies reflect the release control model.

Open full notes
19

Expressions

Expressions turns a manual or repeated decision into versioned, parameterized, testable, and observable execution within Azure Pipelines Architecture and YAML. It is not an isolated definition: its value appears when it supports keep orchestration declarative, separate compile-time parameters from runtime state, use templates for governed reuse, pass only explicit outputs, and make stage dependencies reflect the release control model.

Open full notes
20

Templates

Templates turns a manual or repeated decision into versioned, parameterized, testable, and observable execution within Azure Pipelines Architecture and YAML. It is not an isolated definition: its value appears when it supports keep orchestration declarative, separate compile-time parameters from runtime state, use templates for governed reuse, pass only explicit outputs, and make stage dependencies reflect the release control model.

Open full notes
21

Variable templates

Variable templates turns a manual or repeated decision into versioned, parameterized, testable, and observable execution within Azure Pipelines Architecture and YAML. It is not an isolated definition: its value appears when it supports keep orchestration declarative, separate compile-time parameters from runtime state, use templates for governed reuse, pass only explicit outputs, and make stage dependencies reflect the release control model.

Open full notes
22

Job templates

Job templates turns a manual or repeated decision into versioned, parameterized, testable, and observable execution within Azure Pipelines Architecture and YAML. It is not an isolated definition: its value appears when it supports keep orchestration declarative, separate compile-time parameters from runtime state, use templates for governed reuse, pass only explicit outputs, and make stage dependencies reflect the release control model.

Open full notes
23

Stage templates

Stage templates turns a manual or repeated decision into versioned, parameterized, testable, and observable execution within Azure Pipelines Architecture and YAML. It is not an isolated definition: its value appears when it supports keep orchestration declarative, separate compile-time parameters from runtime state, use templates for governed reuse, pass only explicit outputs, and make stage dependencies reflect the release control model.

Open full notes
24

Multi-stage pipelines

Multi-stage pipelines governs how a request is named, addressed, routed, filtered, transported, protected, and delivered to a healthy endpoint within Azure Pipelines Architecture and YAML. It is not an isolated definition: its value appears when it supports keep orchestration declarative, separate compile-time parameters from runtime state, use templates for governed reuse, pass only explicit outputs, and make stage dependencies reflect the release control model.

Open full notes
25

Dependencies

Dependencies provides a concrete platform capability that must be configured, secured, validated, observed, and owned throughout its lifecycle within Azure Pipelines Architecture and YAML. It is not an isolated definition: its value appears when it supports keep orchestration declarative, separate compile-time parameters from runtime state, use templates for governed reuse, pass only explicit outputs, and make stage dependencies reflect the release control model.

Open full notes
26

Outputs

Outputs provides a concrete platform capability that must be configured, secured, validated, observed, and owned throughout its lifecycle within Azure Pipelines Architecture and YAML. It is not an isolated definition: its value appears when it supports keep orchestration declarative, separate compile-time parameters from runtime state, use templates for governed reuse, pass only explicit outputs, and make stage dependencies reflect the release control model.

Open full notes
27

Matrix strategies

Matrix strategies provides a concrete platform capability that must be configured, secured, validated, observed, and owned throughout its lifecycle within Azure Pipelines Architecture and YAML. It is not an isolated definition: its value appears when it supports keep orchestration declarative, separate compile-time parameters from runtime state, use templates for governed reuse, pass only explicit outputs, and make stage dependencies reflect the release control model.

Open full notes