DevOps and Beyond

TH15 Deep Dive: Deep Dive: Infrastructure as Code Bake-off, comparing ARM, Terraform and Bicep with CI/CD


1:15pm - 4:00pm

Level: Intermediate to Advanced

Mike Benkovich

Developer, Business Owner, Consultant, Cloud Architect, Microsoft Azure MVP and an Online Instructor

Infrastructure as Code (IaC) comes in many flavors, and the Azure Cloud's default deployment templates work with Azure Resource Manager (ARM) to define and deploy infrastructure. Working with the JSON format of ARM can be challenging, but Microsoft has introduced a language processor called Bicep which generates ARM as output. At the same time there are other options, including scripting tools, Terraform, Pulumi, Ansible and others. In this session, we'll compare creating infrastructure using ARM, Terraform and Bicep, and compare pros and cons to each. Taking the IaC and deploying it has choices and options too, and in the second part of the session we compare Azure DevOps vs GitHub Actions. See the options side by side and learn about the tradeoffs of each to help you make the decision of which way to go.

You will learn:

  • What is Infrastructure as Code
  • What options and tradeoffs do I make when choosing Terraform, ARM or Bicep
  • Which DevOps features are available in GitHub Actions or Azure DevOps Pipelines to deliver my IaC solution