At first this sounds crazy, but Azure DevOps Pipelines are actually a Serverless compute engine. When you compare it to other Azure cloud services, it’s sort of a mixture of the features of Azure Functions and Azure Logic Apps mixed with Git source control integration.
At first glance, it might seem a bit far-fetched to consider Azure DevOps Pipelines as a Serverless compute engine, but when you dig deeper, the comparison starts to make sense.
What is Serverless Computing?
Serverless computing is a cloud computing execution model where the cloud provider dynamically manages the allocation of machine resources. The pricing is based on the actual amount of resources consumed by an application, rather than on pre-purchased units of capacity. It can be a cost-effective and scalable option for developers to run their code.
Azure DevOps Pipelines as Serverless
Azure DevOps Build Pipelines provide a cloud service for automating builds and deployments of your code. They are triggered by events such as a code commit, pull requests, or even manually. Once triggered, the pipeline executes a series of tasks defined in a YAML configuration file. This YAML configuration can include all sorts of supported task types, and command-line scripts, including the ability to build and execute source code contained within the source code repository.
The Azure DevOps Pipelines are executed on a “build agent”. Of which, Microsoft includes free support for some build agent use, or you can alternatively configure your own VMs as build agents for dedicated compute resources as well.
Comparison with Azure Functions and Logic Apps
Azure Functions is a serverless compute service that lets you run event-triggered code without having to explicitly provision or manage infrastructure. Similarly, Azure Logic Apps provides a way to automate workflows and business processes by integrating apps, data, systems, and services across enterprises or organizations.
Azure DevOps Build Pipelines share some commonalities with these services:
- Event-Driven: Like Azure Functions, build pipelines are event-driven and can be triggered by various events such as code commits or pull requests.
- Workflow Automation: YAML can be used to automate complex workflows, much like Azure Logic Apps, which can define input, actions, conditions, and output.
- Integration: Azure DevOps Pipelines integrate with Git source control, and include support for many different build actions. These actions are similar to how Logic Apps integrates built-in actions.
- Scalability: Hosted by build agents, Azure DevOps Pipelines can scale automatically to meet demand, similar to Azure Functions and Logic Apps, which can scale based on the number of incoming events.
Unique Advantages
While Azure DevOps Build Pipelines share characteristics with Azure Functions and Logic Apps, they also offer unique advantages:
- Continuous Integration/Continuous Deployment (CI/CD): They are specifically designed for CI/CD, enabling developers to automate the testing and deployment of code, including built-in Git repository integration.
- Rich Ecosystem: Azure DevOps provides a rich ecosystem of tasks and extensions that can be used to customize the build and deployment process.
- Integration with Azure: They offer a great integration point with other Microsoft Azure services.
The Serverless Nature of Azure DevOps Pipelines
The serverless aspect of Azure DevOps Build Pipelines comes from the fact that you don’t need to manage any servers or infrastructure. The resources are managed by Microsoft with the hosted build agents, or you can provision your own VMs in Azure for dedicated built agents. This makes it an on-demand, scalable, and cost-effective solution for automating multiple pipelines of code that can be run.
Conclusion
While Azure DevOps Pipelines might not be the first thing that comes to mind when you think of serverless computing, they embody many of the same principles. They are event-driven, scalable, and allow developers to focus on writing code rather than managing infrastructure. Azure DevOps Pipelines stand out as a powerful serverless compute engine tailored for CI/CD, but can be used for so much more.
What do you think about this idea of using Azure DevOps Pipelines to run certain Serverless workloads, rather than Azure Functions or Logic Apps?
Original Article Source: Use Azure DevOps Pipelines as a Serverless Compute Engine written by Chris Pietschmann (If you're reading this somewhere other than Build5Nines.com, it was republished without permission.)

Microsoft Azure Regions: Interactive Map of Global Datacenters
Create Azure Architecture Diagrams with Microsoft Visio
Software Innovation: The Epic Journey of Microsoft Visual Studio – Code, Craft, and Continuity
Book: Exam Ref 70-535 Architecting Microsoft Azure Solutions (RETIRED)
Microsoft Copilot Internal Architecture Explained




