Overview
Release Management in Azure DevOps allows you to automate the deployment of your applications to multiple environments, enforce approval gates, and track release history. It integrates with pipelines, environments, and approvals to provide end‑to‑end delivery.
Getting Started
- Navigate to Pipelines → Releases in your Azure DevOps project.
- Click New release pipeline and choose a template or start from scratch.
- Define your stages (e.g., Development, Staging, Production).
- Link an existing build artifact or create a new one.
- Configure tasks, approvals, and environment variables.
For a step‑by‑step walkthrough, see the Pipeline Configuration section.
Pipeline Configuration
stages:
- stage: Build
jobs:
- job: BuildJob
pool: default
steps:
- task: DotNetCoreCLI@2
inputs:
command: 'restore'
projects: '**/*.csproj'
- stage: Deploy
dependsOn: Build
jobs:
- deployment: DeployJob
environment: 'Production'
strategy:
runOnce:
deploy:
steps:
- task: AzureWebApp@1
inputs:
appName: 'my-web-app'
package: '$(System.ArtifactsDirectory)/**/*.zip'
Use the visual editor to add stages, tasks, and gates. Drag and drop tasks from the marketplace or built‑in list, configure inputs, and set conditions.
Environments
Environments represent the target where your application will be deployed. They enable you to define approvals, checks, and resource definitions.
- Development – Auto‑deployment, no approvals.
- Staging – Manual approval before deployment.
- Production – Multi‑stage approvals, rollback policies.
Variables & Secrets
Define variables at the pipeline, stage, or job level. Mark sensitive values as secret to mask them in logs.
# Variable group example
variables:
- group: 'ProductionSecrets'
steps:
- script: echo "Deploying version $(Build.BuildNumber)"
displayName: 'Show version'
FAQ
- How do I roll back a release?
- Use the Redeploy button on a previous successful release or create a new release using an older build artifact.
- Can I trigger releases from GitHub actions?
- Yes. Use the Azure DevOps REST API with a personal access token to create a new release programmatically.
- What is the difference between gates and approvals?
- Gates are automated checks (e.g., health checks, latency tests). Approvals require a human to authorize the deployment.