Skip to content
Latchkey

Azure Pipelines "Job depends on unknown job"

A dependsOn references a job (or stage) name that the compiler cannot find. The name is misspelled, the job is in another stage, or you referenced the displayName instead of the job identifier.

What this error means

The pipeline fails to compile with Job <name> depends on unknown job <name> (or the stage equivalent). The dependency graph cannot be built, so nothing runs.

Azure DevOps
/azure-pipelines.yml: Job 'deploy' depends on unknown job 'biuld'.
Stage 'release' depends on unknown stage 'Build'.

Common causes

Misspelled or wrong identifier

dependsOn must reference the job/stage name (the identifier), not its displayName. A typo or pointing at the human-readable label fails to resolve.

Cross-stage dependency

A job can only depend on jobs in the same stage. To order work across stages, set dependsOn at the stage level, not the job level.

How to fix it

Reference the exact job/stage identifier

Use the job: or stage: name, matching case exactly.

azure-pipelines.yml
jobs:
  - job: build
    steps: [ { script: echo build } ]
  - job: deploy
    dependsOn: build        # the identifier, not the displayName
    steps: [ { script: echo deploy } ]

Order across stages at the stage level

For cross-stage ordering, put dependsOn on the stage.

azure-pipelines.yml
stages:
  - stage: Build
  - stage: Release
    dependsOn: Build

How to prevent it

  • Give jobs and stages short, unambiguous identifiers and reference those.
  • Keep dependsOn within the same scope (job→job in a stage, stage→stage).
  • Validate the pipeline so dependency typos surface before a run.

Related guides

Tired of flaky CI? Latchkey auto-heals failed jobs and retries them for you. Start free →