1 min read
Azure Pipelines Improvements
Azure Pipelines offers powerful CI/CD capabilities with YAML-based pipeline definitions. This post covers advanced features and improvements for building robust pipelines.
Advanced Pipeline Features
# Template for reusable steps
# templates/build-steps.yml
parameters:
- name: buildConfiguration
default: 'Release'
- name: dotnetVersion
default: '7.0.x'
steps:
- task: UseDotNet@2
inputs:
version: ${{ parameters.dotnetVersion }}
- task: DotNetCoreCLI@2
displayName: 'Restore'
inputs:
command: restore
- task: DotNetCoreCLI@2
displayName: 'Build'
inputs:
command: build
arguments: '--configuration ${{ parameters.buildConfiguration }}'
# Main pipeline using templates
trigger: [main]
stages:
- stage: Build
jobs:
- job: BuildJob
pool:
vmImage: 'ubuntu-latest'
steps:
- template: templates/build-steps.yml
parameters:
buildConfiguration: 'Release'
- stage: Deploy
dependsOn: Build
jobs:
- deployment: DeployWeb
environment: 'production'
strategy:
runOnce:
deploy:
steps:
- task: AzureWebApp@1
inputs:
azureSubscription: 'AzureConnection'
appName: 'mywebapp'
Azure Pipelines templates and stages enable maintainable, scalable CI/CD implementations.