Among all the Infrastructure as Code (IaC) tools and languages, there is one provided by Azure called Azure Resource Manager (ARM), based on JSON format files, that contains the description of the resources to be provisioned.
To learn more about ARM templates, read the following documentation: https://docs.microsoft.com/en-us/azure/azure-resource-manager/templates/overview
When using Terraform to provision resources in Azure, you may need to use resources that are not yet available in the Terraform azurerm provider. Indeed, the azurerm provider is open source and community-based on GitHub, and has a large community of contributors, but this is not enough to keep up with all the changes in Azure's functionalities in real time. This is due to several reasons:
- New releases of Azure resources are very frequent.
- The Terraform azurerm provider is highly dependent on the Azure Go SDK (https://github.com/Azure/azure-sdk-for-go), which does not contain...