Azure DevOps YAML Pipelines: Complete CI/CD Guide

YAML pipelines are the future of Azure DevOps. They’re version-controlled, reviewable, and more powerful than classic pipelines. Here’s how to build them properly.

Basic Structure

trigger:
  - main

pool:
  vmImage: 'ubuntu-latest'

stages:
  - stage: Build
    jobs:
      - job: BuildJob
        steps:
          - script: echo "Building..."
          
  - stage: Deploy
    dependsOn: Build
    jobs:
      - deployment: DeployProd
        environment: Production

Variables and Secrets

variables:
  buildConfiguration: 'Release'
  # Reference from variable group
  - group: production-secrets
  
steps:
  - script: dotnet build -c $(buildConfiguration)

Templates for Reuse

# templates/build-steps.yml
parameters:
  project: ''
  
steps:
  - task: DotNetCoreCLI@2
    inputs:
      command: 'build'
      projects: ${{ parameters.project }}
      
# Main pipeline
steps:
  - template: templates/build-steps.yml
    parameters:
      project: 'src/MyApp.csproj'

References


Discover more from C4: Container, Code, Cloud & Context

Subscribe to get the latest posts sent to your email.

Leave a comment

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.