Azure DevOps and Pipelines
Azure DevOps is Microsoft's integrated suite for planning work, hosting Git repositories, running CI/CD pipelines, managing packages, and tracking tests. Azure Pipelines is the automation service inside that suite that builds, tests, and deploys your code on Microsoft-hosted or self-hosted agents.
itDevOps and software delivery | OpenSkills.info
Course pathWalk it in order
Look it upDip in anytime
Go furtherLeaves this page
Don't Panic
Don't Panic: Azure DevOps and Pipelines
Azure DevOps is Microsoft's "we already work here" suite: Boards for the backlog, Repos for the Git bits, Pipelines for the robots that build and ship, Artifacts for the packages those robots publish, and Test Plans when a human still has to click through a checklist. One project keeps the paperwork attached to the commits attached to the runs, which is the whole point of buying a suite instead of five stickers.
Azure Pipelines is the part that actually does the midnight work. Picture nested boxes. The outer box is the pipeline. Inside it are stages (Build, then Deploy, if you are feeling orderly). Inside a stage are jobs, and each job claims one agent. Inside a job are steps: tasks and scripts that share a workspace until the job ends.
Microsoft would like your new pipelines to be YAML in the repo, usually azure-pipelines.yml, so pipeline edits face the same review as application edits. Classic pipelines still haunt the portal for older definitions. They are not evil; they are not where new features go to live.
Agents come in personalities. Microsoft-hosted agents hand you a fresh VM and then discard it, which is wonderfully unsentimental. Self-hosted agents live on your network with your tools and your grudges. Pools are how a job asks for the right personality. If a run sits in queue forever, you are usually out of parallel jobs or out of matching agents, not out of hope.
Two surprises separate people who skim marketing from people who ship:
First, variables care when they expand. Template expressions fire early; runtime values arrive late; secrets are masked in logs and still readable to a job that wants them. Second, Environments, service connections, and approvals are how Production actually says no. Those checks live on the resource in the portal. They are not a comment you can delete in YAML and call a refactor.
Templates are how organizations stop reinventing npm ci. Include templates reuse steps. Extends templates politely insist that your pipeline look like the approved shape, scans included.
If you only open one more tab, use Don't Panic's siblings like this: the intro for the suite map, the cheatsheet when you forget whether environment belongs on a deployment job, Field Notes when someone asks who may edit the prod pipeline, and the practice reference when you want a command that already survived contact with reality.
Where this skill leads
Relevant careers
See how this topic contributes to broader role-level skill maps.
Sources
- https://learn.microsoft.com/en-us/azure/devops/user-guide/what-is-azure-devops?view=azure-devops
Supports
- Azure DevOps as integrated Boards, Repos, Pipelines, Artifacts, Test Plans
- Organization/project model and Services vs Server product lines
- Typical plan → code → build → test → deploy flow across hubs
- https://learn.microsoft.com/en-us/azure/devops/pipelines/get-started/what-is-azure-pipelines?view=azure-devops
Supports
- Azure Pipelines as CI, continuous testing, and CD
- Language/platform support and deployment target breadth
- Package publishing relationship to Azure Artifacts
- Free parallel-job grant basics for private projects after billing setup
- https://learn.microsoft.com/en-us/azure/devops/pipelines/get-started/pipelines-get-started?view=azure-devops
Supports
- Recommendation to start new pipelines with YAML
- azure-pipelines.yml versioned with application branches
- Classic editor pipelines still available for existing definitions
- https://learn.microsoft.com/en-us/azure/devops/pipelines/yaml-schema/?view=azure-pipelines
Supports
- Pipeline hierarchy of stages, jobs, deployment jobs, and steps
- Root schema entry points for pipeline definitions
- https://learn.microsoft.com/en-us/azure/devops/pipelines/agents/agents?view=azure-devops
Supports
- Agent runs one job at a time
- Microsoft-hosted, self-hosted, Managed DevOps Pools, VMSS agent types
- Fresh VM per job for Microsoft-hosted agents
- https://learn.microsoft.com/en-us/azure/devops/pipelines/process/variables?view=azure-devops
Supports
- Variables are strings with scope precedence job > stage > root
- Macro, runtime, and template expression forms
- Distinction between variables and runtime parameters
- https://learn.microsoft.com/en-us/azure/devops/pipelines/library/service-endpoints?view=azure-devops
Supports
- Service connections as authenticated links to external services
- Standing access and automatic disable guidance for unused connections
- https://learn.microsoft.com/en-us/azure/devops/pipelines/process/environments?view=azure-devops
Supports
- Environments as YAML deployment targets with history and traceability
- Not available in Classic; deployment groups are the Classic analogue
- Kubernetes and VM resource types
- https://learn.microsoft.com/en-us/azure/devops/pipelines/process/approvals?view=azure-devops
Supports
- Approvals and checks configured on resources in the portal, not in YAML
- Stage waits until all resource checks succeed
- https://learn.microsoft.com/en-us/azure/devops/pipelines/process/templates?view=azure-devops
Supports
- Include templates insert reusable content
- Extends templates define allowed pipeline schema for security and standards
- https://learn.microsoft.com/en-us/azure/devops/artifacts/overview?view=azure-devops
Supports
- Azure Artifacts feeds for NuGet, npm, Maven, Python, Cargo, Universal Packages
- Free storage tier note for organizations
- https://learn.microsoft.com/en-us/azure/devops/cli/?view=azure-devops
Supports
- Azure DevOps CLI for pipeline listing and administration
- https://learn.microsoft.com/en-us/azure/devops/release-notes/features-timeline
Supports
- Public Azure DevOps roadmap and server build-number references used in timeline
- https://azure.microsoft.com/en-us/blog/introducing-azure-devops/
Supports
- 2018-09-10 announcement renaming to Azure DevOps and named services
- https://azure.microsoft.com/en-us/blog/now-available-azure-devops-server-2019/
Supports
- Azure DevOps Server 2019 availability for on-premises customers
- https://devblogs.microsoft.com/devops/whats-new-with-azure-pipelines/
Supports
- May 2019 multi-stage YAML pipelines, Environments, and deployment strategies
- https://arstechnica.com/information-technology/2013/11/microsoft-takes-development-into-the-cloud-with-visual-studio-online/
Supports
- November 2013 Visual Studio Online cloud ALM launch coverage
- https://en.wikipedia.org/wiki/Azure_DevOps_Server
Supports
- Historical product rename table from TFS through Azure DevOps Server releases
- https://www.devjev.nl/posts/2022/i-am-in-your-pipeline-reading-all-your-secrets/
Supports
- Secret pipeline variables readable to job scripts despite log masking
- Why broad pipeline edit rights are a credential risk
- https://www.devjev.nl/posts/2022/your-service-connection-credentials-are-mine/
Supports
- ARM service connection material accessible to pipeline jobs without tight controls
- https://marketplace.visualstudio.com/azuredevops
Supports
- Extension marketplace for Azure DevOps tasks and hubs
- https://learn.microsoft.com/en-us/rest/api/azure/devops/?view=azure-devops-rest-7.2
Supports
- Official REST API surface for automation
- https://github.com/johnlokerse/awesome-azure-devops
Supports
- Curated discovery source for community tools and practitioner links
