Our development team is looking for ways to make the creation of Bicep files for Azure deployments much easier. Currently, we have some hurdles such as: 1) we manually ensure compliance with Azure policies; 2) adhering to strict naming conventions, which is tedious and often leads to mistakes; and 3) we depend heavily on manually applying Azure Verified Modules (AVM) and other templates. This process is not only cumbersome but also affects our efficiency. We're hoping to find solutions to automate the generation of Bicep files for specific Azure resources. The ideal scenario would allow us to make a high-level request (like 'create a key vault') and receive a fully compliant Bicep file that meets our policies, naming conventions, and AVM standards. What directions should we explore? We're considering tools like Azure AI Studio/OpenAI for intelligent Bicep generation, GitHub Copilot, and other possible alternatives. Any suggestions would be greatly appreciated!
2 Answers
I think you might be overcomplicating things with the current setup. Azure policies are designed to help with compliance, so that shouldn't be a big issue. For naming conventions, consider creating modules that handle naming for you. Each resource should use these modules, reducing errors. As for templates, relying on them is quite standard with Bicep. You might avoid problems by sticking to modules and properly maintaining your Infrastructure as Code (IaC). You could also explore using .NET Aspire or azd compose to ease the process. Proper module management can really streamline everything.
Honestly, if you want to simplify this, maybe skip using Bicep altogether. Instead, focus on using JSON parameters with the Azure CLI or PowerShell commands directly. You could even create a nice front-end UI that lets users input values and then calls the Azure APIs. The idea is to keep developers from getting bogged down with extra languages. Plus, there's this Pode module that can help you set up an API pretty easily to interface securely with Azure. Microsoft has a lot of room for innovation here, especially when clients are deep into using ARM; it can get frustrating!
Thanks for your input! We're definitely looking to utilize GitHub Copilot or similar tools that can adapt to our custom policies. This approach could save time and help with the coding process.