Azure / azure-dev

A developer CLI that reduces the time it takes for you to get started on Azure. The Azure Developer CLI (azd) provides a set of developer-friendly commands that map to key stages in your workflow - code, build, deploy, monitor, repeat.
https://aka.ms/azd
MIT License
416 stars 204 forks source link

compose: streamlined infra generation #4576

Open weikanglim opened 4 days ago

weikanglim commented 4 days ago

The current generation for compose uses a combination of text/template and a context struct that represents the deployment metadata. We want a more scalable model that reduces the generation context for a given resource and streamlines generation.

Some items on the wishlist:

  1. Default flowing of parameters in the Bicep module
  2. Supporting existing resources references vs. AVM module creation
  3. Support partial synth

It should aim to improve readability, code reviews, and authoring experience. An ideal authoring workflow is the ability to ingest a fully synthesized Bicep into scaffolded generation assets and requires fewer manual tweaks.

The minimum requirements are:

  1. Overall cost of development (author time, review time, validation time) for an addition of 1 resource should be logarithmic with respect to number of resources supported in composability for us to scale. Ideally, it's a constant cost -- but the Bicep module constructs may be the limitation here.