HashiCorp's open-source tool for describing infrastructure declaratively in HCL. For Azure it relies on four providers: AzureRM, AzAPI, AzureAD and AzureDevops.
Read more: Microsoft Learn
In the Ultra Transcenders books
Each book explains Terraform in context, with comparison tables and the common traps.
Terms in this definition
- Chat message roles
Labels on chat messages: instructions go under system, the person's input under user, the model's previous answers under assistant, and results returned by a called tool under tool (or function).
- HashiCorp Configuration Language
HCL: the declarative syntax Terraform and Packer templates are written in. Despite the initials, it has nothing to do with VMware's hardware compatibility list.
- AzureRM
Former Azure PowerShell module, deprecated on 29 February 2024 and superseded by Az; for example,
Get-AzureRmRoleDefinitionis nowGet-AzRoleDefinition.
Related terms
- Azure Export for Terraform
Also known as aztfexport, this generates Terraform HCL code and state from Azure resources you already have, so they can be managed by Terraform. Point it at a single resource, a whole resource group or the results of a Resource Graph query, and target either azurerm or AzAPI.
- Azure Landing Zones IaC Accelerator
Microsoft's preferred route to deploying and running the platform. A PowerShell bootstrap prepares GitHub or Azure DevOps with repositories, pipelines and runners, together with Bicep or Terraform code based on Azure Verified Modules.
- Azure landing zones library
Released in numbered versions and found under
platform/alz, this is where the Bicep and Terraform modules get the policy content and archetypes they deploy. Sovereign Landing Zone extends it. - Azure Verified Modules
Building blocks in Terraform or Bicep, backed by Microsoft, for deploying Azure resources and whole patterns according to Well-Architected guidance.
- Checkov
Open-source scanner for infrastructure-as-code that Microsoft Security DevOps runs; because it understands Terraform, ARM, Kubernetes manifests, CloudFormation, Helm charts and Dockerfiles, its format coverage exceeds Template Analyzer's.
- Declarative
Describing the result wanted (as Terraform configurations and Bicep files do) and letting tooling work out the steps. Microsoft favours this over imperative scripting.
- Starter module
A choice made while bootstrapping the Azure landing zone IaC accelerator: which template the platform code starts from, for example platform_landing_zone (offered in Bicep and Terraform). You then pick a scenario and set its options.
- Template Analyzer
Bicep and ARM templates are checked by this infrastructure-as-code scanner, which ships with Microsoft Security DevOps and bundles PSRule. Checkov or Terrascan cover Terraform, CloudFormation and Kubernetes files.