Getting started and looking for guidance on complex deployments #2955
-
Hey everyone, I'm looking for some pointers & assistance. I'm working on a demonstration to automate and reduce complexity in arm templates. Currently, I have a json template that can deploy what is pictured below, the issue is the json is unmaintainable other than by one person (the person who wrote it) and it's fragile. The issue I'm having is that we'd like to deploy a website with all its components in two regions that are connected to each other. The way this is done in json is via loops for region01 and region02. I'm struggling a bit, I transpiled an arm template to bicep and I don't think it's going to get the job done, there are just too many gaps. I would like to deploy a region1 and region2 location as a parameter and deploy two identical configurations (one in each region) with the necessary cross-referenced resources linked like I have pictured below. Then we would have parameters for a DEV, UAT, and PROD deployment (for example). Questions:
I should also mention: since I have an ARM template I started with an Az bicep decompile, but the result contains a lot of validation errors (bicep decompile pulls in locations on resources that shouldn't have locations, concat warnings, dependson validation errors, etc). I'm thinking the complexity of the ARM template may be too much for the decompile option to support and we may have to think differently about how we deploy if we go with bicep. Thanks for your time! |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment 3 replies
-
Hi @seanmcne I will say, that when I started out doing Bicep decompile, I was also put off from too many errors. However after only a few days I took another look and found that I was easily able to resolve all errors, mostly in a way that was not as much work as I had originally thought it would be. Since then I have got through this many templates with Decompile to Bicep. https://github.com/brwilkinson/AzureDeploymentFramework/tree/dev/ADF/bicep I am about half way through now, this is my main list that I started with on the ARM side. ping me if you want to do a session on teams to work through your decompile issues, I think you might be surprised.... although I will say, after decompiling I found a host of ways to refactor and simplify what I had. It's still a work in progress, I found the Linting rules most helpful as well during this process. On the scaling piece, you should be able to loop over the regions easily enough, once you using Bicep Modules by using the Scope option. |
Beta Was this translation helpful? Give feedback.
Hi @seanmcne I will say, that when I started out doing Bicep decompile, I was also put off from too many errors.
However after only a few days I took another look and found that I was easily able to resolve all errors, mostly in a way that was not as much work as I had originally thought it would be.
Since then I have got through this many templates with Decompile to Bicep. https://github.com/brwilkinson/AzureDeploymentFramework/tree/dev/ADF/bicep
I am about half way through now, this is my main list that I started with on the ARM side.
https://github.com/brwilkinson/AzureDeploymentFramework/tree/dev/ADF/templates-base
ping me if you want to do a session on teams to work through your deco…