Book Image

Implementing CI/CD Using Azure Pipelines

By : Piti Champeethong, Roberto Mardeni
5 (1)
Book Image

Implementing CI/CD Using Azure Pipelines

5 (1)
By: Piti Champeethong, Roberto Mardeni

Overview of this book

Continuous integration and continuous delivery (CI/CD) are ubiquitous concepts in modern development. Azure Pipelines is one of the most popular services that you can utilize for CI/CD, and this book shows you how it works by taking you through the process of building and automating CI/CD systems using Azure Pipelines and YAML, simplifying integration with Azure resources and reducing human error. You’ll begin by getting an overview of Azure Pipelines and why you should use it. Next, the book helps you get to grips with build and release pipelines, and then builds upon this by introducing the extensive power of YAML syntax, which you can use to implement and configure any task you can think of. As you advance, you’ll discover how to integrate Infrastructure as Code tools, such as Terraform, and perform code analysis with SonarQube. In the concluding chapters, you’ll delve into real-life scenarios and hands-on implementation tasks with Microsoft Azure services, AWS, and cross-mobile application with Flutter, Google Firebase, and more. By the end of this book, you’ll be able to design and build CI/CD systems using Azure Pipelines with consummate ease, write code using YAML, and configure any task that comes to mind.
Table of Contents (18 chapters)
1
Part 1:Getting Started with Azure Pipelines
6
Part 2:Azure Pipelines in Action
11
Part 3:CI/CD for Real-World Scenarios
15
Chapter 12: Navigating Common Pitfalls and Future Trends in Azure Pipelines

Understanding IaC

In the past, infrastructure was typically provisioned and configured manually with manually documented steps and/or a combination of scripts. This made the whole process error-prone and slow.

In the same way that you use a rigorous process for your application code, you should practice that for your infrastructure. The purpose of this approach is to make deployments repeatable and immutable, reduce the chances of error, and accelerate the deployment process by avoiding/eliminating any human interaction whenever possible.

IaC is the practice of codifying and storing in source control a descriptive model that defines and deploys all the infrastructure needed to run your applications and any supporting dependencies. It can encompass network configuration, load balancers, virtual machines, and any other application or data services your application architecture requires to operate and is applicable to on-premises data centers and cloud provider platforms.

The...