PMNFR1 - Module Naming
ID: PMNFR1 - Category: Naming - Module Naming
Pattern Modules MUST follow the below naming conventions (all lower case).
Important
As part of the module proposal process, the module’s approved name is captured both in the module proposal issue AND the related module index page (backed by the corresponding CSV file).
Therefore, module owners don’t need to construct the module’s name themselves, instead they need use the name prescribed in the module proposal issue or in the related CSV file, at the time of approval.
Bicep Pattern Module Naming
- Naming convention:
avm/ptn/<hyphenated grouping/category name>/<hyphenated pattern module name> - Example:
avm/ptn/compute/app-tier-vmssoravm/ptn/avd-lza/management-planeoravm/ptn/3-tier/web-app - Segments:
ptndefines this as a pattern module<hyphenated grouping/category name>is a hierarchical grouping of pattern modules by category, with each word separated by dashes, such as:- project name, e.g.,
avd-lza, - primary resource provider, e.g.,
computeornetwork, or - architecture, e.g.,
3-tier
- project name, e.g.,
<hyphenated pattern module name>is a term describing the module’s function, with each word separated by dashes, e.g.,app-tier-vmss= Application Tier VMSS;management-plane= Azure Virtual Desktop Landing Zone Accelerator Management Plane
Terraform Pattern Module Naming
- Naming convention:
avm-ptn-<pattern module name>(Module name for registry)terraform-<provider>-avm-ptn-<pattern module name>(GitHub repository name to meet registry naming requirements)
- Example:
avm-ptn-apptiervmssoravm-ptn-avd-lza-managementplane - Segments:
<provider>is the logical abstraction of various APIs used by Terraform. In most cases, this is going to beazurermorazureadfor resource modules.ptndefines this as a pattern module<pattern module name>is a term describing the module’s function, e.g.,apptiervmss= Application Tier VMSS;avd-lza-managementplane= Azure Virtual Desktop Landing Zone Accelerator Management Plane