Module 8: CI/CD Pipelines
Continuous Integration and Deployment with Azure Pipelines.
Duration: 90 minutes
Learning Objectives
- • Create and configure Azure Pipelines
- • Set up build and release processes
- • Integrate automated testing
- • Implement deployment strategies
Key Topics
Pipeline Creation and Configuration
Setting up Azure Pipelines for automated builds and deployments.
# azure-pipelines.yml
trigger:
- main
pool:
vmImage: 'ubuntu-latest'
variables:
buildConfiguration: 'Release'
steps:
- task: DotNetCoreCLI@2
displayName: 'Restore packages'
inputs:
command: 'restore'
projects: '**/*.csproj'Build and Release Processes
Automating the complete software delivery pipeline.
- • Source code compilation
- • Unit test execution
- • Code quality analysis
- • Artifact generation
- • Deployment to environments
Automated Testing Integration
Incorporating testing into the CI/CD pipeline.
# Testing in pipeline
- task: DotNetCoreCLI@2
displayName: 'Run tests'
inputs:
command: 'test'
projects: '**/*Tests.csproj'
arguments: '--configuration $(buildConfiguration) --collect "Code coverage"'Deployment Strategies
Implementing different deployment approaches for various scenarios.
- • Blue-Green deployments
- • Rolling deployments
- • Canary releases
- • Feature flags
- • Environment-specific configurations
Hands-on Exercises
Exercise 1: Create CI Pipeline
Set up a continuous integration pipeline for the Student Management application.
Exercise 2: Implement CD Pipeline
Create a continuous deployment pipeline with automated testing and deployment.
Exercise 3: Multi-Environment Deployment
Configure deployment to multiple environments (dev, staging, production).
← Back to C# Training
Module 8 of 9