Microsoft Docs – Azure

Build and Release Pipelines in Azure DevOps

Introduction

Azure Pipelines automates build, test, and deployment of your applications to any platform. This tutorial guides you through creating a CI/CD pipeline using YAML, adding stages, and integrating with popular services.

Prerequisites

Step 1 – Create a New Pipeline

  1. Navigate to Pipelines → New pipeline in your Azure DevOps project.
  2. Select the source repository (e.g., Azure Repos Git).
  3. Choose YAML as the configuration method.

The wizard will generate a starter azure-pipelines.yml file.

Sample YAML Pipeline

trigger:
- main

pool:
  vmImage: 'ubuntu-latest'

variables:
  buildConfiguration: 'Release'

stages:
- stage: Build
  jobs:
  - job: BuildJob
    steps:
    - task: DotNetCoreCLI@2
      inputs:
        command: 'restore'
        projects: '**/*.csproj'
    - task: DotNetCoreCLI@2
      inputs:
        command: 'build'
        arguments: '--configuration $(buildConfiguration)'
        projects: '**/*.csproj'
    - task: DotNetCoreCLI@2
      inputs:
        command: 'publish'
        arguments: '--configuration $(buildConfiguration) --output $(Build.ArtifactStagingDirectory)'
        projects: '**/*.csproj'

- stage: Release
  dependsOn: Build
  jobs:
  - deployment: DeployJob
    environment: 'Production'
    strategy:
      runOnce:
        deploy:
          steps:
          - download: current
            artifact: drop
          - task: AzureWebApp@1
            inputs:
              azureSubscription: ''
              appName: ''
              package: '$(System.DefaultWorkingDirectory)/**/*.zip'

Next Steps