.NET/C#
  • ASP.NET Core Overview
  • ASP.NET Core API tutorial
    • How to create ASP.NET Core C# API tutorial
      • launchSettings
      • Install swagger
        • Swagger best practices
      • Run the app
      • Fix CORS problem
      • Add AutoMapper
      • Add JWT reference
      • Add .gitignore
      • Basic structure & EF Core
      • AddSingleton
    • Loading Related Entities
  • Unit test controller logic in ASP.NET Core
    • Unit testing controllers
  • .NET Q&A
    • dotnet try
    • LINQ
      • LINQ Query Syntax
      • Lambda Expression
      • Standard Query Operators
  • .NET C# Interview questions
    • C# - .NET interview questions and answers [Part 1]
    • C# - .NET interview questions and answers [Part 2]
    • C# Interview questions [Part 3] General questions
  • C#
    • Object-Oriented Programming (Principles)
      • N-tier architecture style
      • Command and Query Responsibility Segregation (CQRS) pattern
      • Project architecture
    • C# Advanced review
      • Implicit typing
      • Generics
      • Attributes
      • Reflection
      • Delegates
      • Anonymous Methods and Lambda Expressions
      • Events
      • Ref vs Out
      • Task
        • TaskFactory Class
  • MySQL
    • MySQL Lerning
      • SELECT
      • ORDER BY
      • WHERE
      • DISTINCT
      • IN
      • BETWEEN
      • Join
      • INNER JOIN
      • LEFT JOIN
      • RIGHT JOIN
      • GROUP BY
      • Subquery
      • UNION
    • Stored Procedures
      • CREATE PROCEDURE
  • Versioning API, MongoDB and ci-cd
    • Create a web API with ASP.NET Core and MongoDB
    • REST API versioning with ASP.NET Core
    • Design a CI/CD pipeline using Azure DevOps
      • Create a CI/CD pipeline for GitHub repo using Azure DevOps Starter
  • TFS & TFCV
    • What is Team Foundation Version Control
      • Develop and share your code in TFVC using Visual Studio
      • Suspend your work and manage your shelvesets
    • Newtonsoft Json.NET
      • Serializing and Deserializing JSON
  • MS-SQL
    • Quick tutorial
      • Add new column to a table
      • LEFT/RIGHT Reverse operator
      • Dates (Transact-SQL)
      • CAST and CONVERT (Transact-SQL)
      • Types of JOIN
      • Our first Left Outer Join
      • CROSS JOIN
Powered by GitBook
On this page
  • Relevant use cases
  • Architecture

Was this helpful?

  1. Versioning API, MongoDB and ci-cd

Design a CI/CD pipeline using Azure DevOps

PreviousREST API versioning with ASP.NET CoreNextCreate a CI/CD pipeline for GitHub repo using Azure DevOps Starter

Last updated 4 years ago

Was this helpful?

This scenario provides architecture and design guidance for building a continuous integration (CI) and continuous deployment (CD) pipeline. In this example, the CI/CD pipeline deploys a two-tier .NET web application to the Azure App Service.

Migrating to modern CI/CD processes provides many benefits for application builds, deployments, testing, and monitoring. By using Azure DevOps along with other services such as App Service, organizations can focus on the development of their apps rather than the management of the supporting infrastructure.

Relevant use cases

Consider Azure DevOps and CI/CD processes for:

  • Accelerating application development and development lifecycles.

  • Building quality and consistency into an automated build and release process

  • Increasing application stability and uptime.

Architecture

The data flows through the scenario as follows:

  1. A developer changes application source code.

  2. Application code including the web.config file is committed to the source code repository in Azure Repos.

  3. Continuous integration triggers application build and unit tests using Azure Test Plans.

  4. Continuous deployment within Azure Pipelines triggers an automated deployment of application artifacts with environment-specific configuration values.

  5. The artifacts are deployed to Azure App Service.

  6. Azure Application Insights collects and analyzes health, performance, and usage data.

  7. Developers monitor and manage health, performance, and usage information.

  8. Backlog information is used to prioritize new features and bug fixes using Azure Boards.

Components

is a service for managing your development lifecycle end-to-end—from planning and project management, to code management, and continuing to build and release.

is a PaaS service for hosting web applications, REST APIs, and mobile back ends. While this article focuses on .NET, there are several additional development platform options supported.

is a first-party, extensible Application Performance Management (APM) service for web developers on multiple platforms.

Azure DevOps
Azure Web Apps
Application Insights