Azure Display Enhancements
This release significantly improves the readability of Terraform plans containing Azure resources by enriching technical IDs with human-readable display names and providing more descriptive resource summaries.
✨ Features
- Enriched Resource IDs: Automatically resolves subscription names, management group names, and tenant names from a mapping file and injects them into the report.
- Improved Role Definitions: Automatically recognizes built-in Azure roles and supports custom role mappings. Role IDs are now displayed as
🛡️ Role Name (GUID). - Resource-Specific Summaries:
azurerm_private_dns_a_record: Displays the Full Qualified Domain Name (FQDN).azurerm_pim_eligible_role_assignment: Displays "Assign🛡️ Roleto👤 Principal".azurerm_role_management_policy: Displays "🛡️ RoleinScope name".
- Broadened ID Detection: Any attribute value matching an Azure resource ID pattern is now automatically formatted, regardless of the attribute name.
- Enhanced Diagnostics: Improved failure tracking in debug mode to identify which resources have unmapped IDs.
🔗 Commits
10f194f4feat: broaden azure resource id detection768a8755feat: add pim and role policy summariesf65c5eb7feat: add private dns a record summariesf089433cfeat: resolve azure role definitionsc715577dfeat: enrich azure scope formatting645d7363feat: extend azure mapping loader and tests1820e2f5fix: adjust azure display summaries
▶️ Getting started
To take advantage of display name resolution, update your principal mapping JSON file to include the new subscriptions, managementGroups, tenants, and roles sections:
{
"principals": { ... },
"subscriptions": [
{ "id": "d1828a48-fced-4ea2-b2ec-4b9623f327fd", "displayName": "Production" }
],
"managementGroups": [
{ "id": "mg-prod", "displayName": "Production Resources" }
],
"roles": [
{ "id": "8e3af657-a8ff-443c-a75c-2fe8c4bcb635", "displayName": "Owner" }
]
}Refer to the README for Azure CLI commands to help populate these sections.