Lesson300 words

Migrating classic pipelines to YAML

Migrate a pipeline from classic to YAML

Why migrate

YAML lives with the application code and follows the repository's branching structure. Treat it as code: review pipeline steps, dependencies, permissions, and changes before merge.

Behavioral differences

Classic releaseYAML
Multiple jobs in one stageRun in sequenceEligible to run in parallel unless dependsOn is set
Job dependenciesNot supporteddependsOn
Task groupsSupportedNot supported — use templates
Definition lives inThe UIThe repository

Actual YAML concurrency also needs available agents and organization-level parallel-job capacity; otherwise eligible jobs queue. Because jobs can run on different agents, restore every required ordering or shared-state dependency explicitly.

Start with the right export

  • Classic build designer supports full YAML export as a starting draft.
  • Classic release does not support full-definition YAML export; export each task individually and assemble the YAML pipeline.

A risk-controlled migration

  1. Inventory stages, tasks, artifacts, variables, schedules, triggers, service connections, approvals, and resource authorizations.
  2. Export the Classic build definition or the Classic release tasks as supported.
  3. Reconstruct task groups as YAML templates; restore required dependsOn edges.
  4. Redefine variables in YAML or pipeline settings. Use variable groups when values are shared, protect secrets, and review YAML's default UTC schedule behavior.
  5. Keep Classic serving production while validating YAML with equivalent inputs in nonproduction or dry run. Compare artifacts, behavior, controls, schedules, variables, dependencies, and authorizations.
  6. Perform a controlled cutover, retire Classic, and consider disabling creation of new Classic pipelines.

The validation path must not execute duplicate non-idempotent production effects.

Primary sources

Ready to study Designing and Implementing Microsoft DevOps Solutions (AZ-400)?

Practice tests, flashcards, and all study notes — free, no sign-up needed.

Start Studying — Free