To maximize learning, students will work in teams, in a common Azure DevOps project, on a common case study.

Audience

This course is appropriate for all members of a software development team, especially those who are actively involved in automating the building, testing, and deploying of software. This course will also provide value for individuals outside the development team (managers, IT, operations, and other stakeholders) who want hands-on exposure to the capabilities of Azure Pipelines. Ideally, attendees should have some experience with Azure DevOps. Understanding of C# and .NET 6.0 will be beneficial but is not required.

Duration

One day

Outline for CI/CD Using Azure Pipelines Training

Module 1. Continuous Integration

- Creating a build pipeline

- Pipeline tasks, variables, and triggers

- Agents (hosted vs. on-premises)

- Configuring self-hosted agents

- Creating a YAML-based pipeline

- Running tests and computing code coverage

- Using Coverlet to collect/report code coverage

- Configuring CI using triggers

- Practicing Continuous Integration

- Configuring and using Test Impact Analysis

- Exploring pipeline analytics

- Continuous Integration+

- Hands-on lab

Module 2. Continuous Delivery

- Creating a release pipeline

- Pipeline stages, jobs, tasks, and targets

- Multi-stage YAML pipelines

- Configuring environments and resources

- Creating, deploying, and managing a release

- Configuring/practicing Continuous Delivery

- Hands-on lab

Module 3. Continuous Deployment

- Continuous Delivery vs. Continuous Deployment

- Build-measure-learn explained

- Using feature flags for CD and feedback

- Hypothesis-Driven Development

- Using LaunchDarkly for feature management

- Creating and using feature flags

- Experimenting in production, A/B testing

- Hands-on lab