Azure DevOps CI/CD Pipeline
Summary:
This course covers the fundamentals of DevOps and Azure DevOps, focusing on CI/CD principles and practices. Learners will gain hands-on experience with Azure DevOps tools for building CI/CD pipelines. Key topics include branching strategies, pipeline security, and monitoring. Integration with third-party tools and best practices for scalability are also explored. The capstone project allows participants to apply their skills to a real-world application.
​
Course Specifics:
​
Module 1: Introduction to DevOps and Azure DevOps
-
1.1 What is DevOps?
-
Principles and practices of DevOps
-
Benefits of DevOps in software development
-
-
1.2 Overview of Azure DevOps
-
Services and tools in Azure DevOps
-
Key concepts: Organizations, Projects, and Repositories
-
-
1.3 Setting up Azure DevOps
-
Creating an account and organization
-
Introduction to Azure DevOps user interface
-
Module 2: Understanding CI/CD Basics
-
2.1 What is CI/CD?
-
Continuous Integration vs. Continuous Deployment
-
Benefits and challenges of CI/CD
-
-
2.2 CI/CD Architecture in Azure DevOps
-
Pipelines, stages, jobs, and tasks
-
Artifacts and dependencies
-
Module 3: Building a CI Pipeline
-
3.1 Setting up Repositories in Azure DevOps
-
Using Git in Azure Repos
-
Branching and merging strategies
-
-
3.2 Creating a CI Pipeline
-
YAML vs. Classic Pipelines
-
Writing your first pipeline in YAML
-
Running and debugging pipelines
-
-
3.3 Unit Testing in CI
-
Integrating automated testing frameworks
-
Viewing test results in the pipeline
-
Module 4: Creating a CD Pipeline
-
4.1 Understanding Continuous Deployment
-
Release pipelines and deployment stages
-
Deployment strategies: Blue-green, Canary, Rolling
-
-
4.2 Building a CD Pipeline
-
Configuring environments and approvals
-
Pre- and post-deployment validations
-
-
4.3 Deploying to Azure Services
-
Deploying to Azure App Service
-
Deploying to Azure Kubernetes Service (AKS)
-
Module 5: Advanced CI/CD Topics
-
5.1 Branching and Release Strategies
-
GitFlow, Trunk-based development, Feature branching
-
-
5.2 Securing Pipelines
-
Managing secrets using Azure Key Vault
-
Role-based access control in Azure Pipelines
-
-
5.3 Monitoring and Troubleshooting
-
Pipeline analytics and logs
-
Debugging failed builds and deployments
-
Module 6: Integrations and Best Practices
-
6.1 Integrating with Third-Party Tools
-
GitHub, Jenkins, and other DevOps tools
-
Using Azure DevOps extensions
-
-
6.2 Best Practices for CI/CD
-
Optimizing pipeline performance
-
Ensuring pipeline reliability and scalability
-
Module 7: Capstone Project
-
7.1 Designing a CI/CD Pipeline for a Real-World Application
-
Choose a project: Web app, Microservices, etc.
-
Implement CI/CD pipelines using Azure DevOps
-
-
7.2 Presentation and Feedback
-
Deploy the application
-
Share learnings and improvements
-
​