MSDN DevOps Documentation

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

  1. Navigate to Pipelines → Releases in your Azure DevOps project.
  2. Click New release pipeline and choose a template or start from scratch.
  3. Define your stages (e.g., Development, Staging, Production).
  4. Link an existing build artifact or create a new one.
  5. 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.