Skip to content

Naming Conventions

Consistent resource naming is essential for Azure cost tracking, access control, and pipeline automation. This page is the authoritative reference for all Microtec ERP resource naming patterns.


Core Prefixes

PrefixScopeExamples
mic-erp-beBackend resourcesRGs, CAE, Redis, Service Bus
mic-erp-frFrontend resourcesStorage accounts (SWA, blob hosting)
mic-erp-be + alphanumericStorage/ACR (no dashes)micerpbedevacr, micerpbeprdsa

Backend Resource Naming

Resource Groups

Pattern: mic-erp-be-{env}-{purpose}-rg

Purpose TokenUsageExample
networkVNet, subnets, NSGsmic-erp-be-dev-network-rg
securityManaged Identity, RBACmic-erp-be-dev-security-rg
sqlSQL configurationmic-erp-be-dev-sql-rg
utilsService Bus, Redismic-erp-be-dev-utils-rg
apps-publicPublic CAE (Gateway + Keycloak)mic-erp-be-dev-apps-public-rg
apps-privatePrivate CAE (all internal services)mic-erp-be-dev-apps-private-rg
monitoringApp Insights, Log Analyticsmic-erp-be-dev-monitoring-rg
globalACR, Key Vaultmic-erp-be-dev-global-rg
storageBackend blob storage (optional)mic-erp-be-dev-storage-rg

Individual Resources

Pattern: mic-erp-be-{env}-{resource-type}

mic-erp-be-dev-cae-private     # Private Container Apps Environment
mic-erp-be-dev-cae-public      # Public Container Apps Environment
mic-erp-be-dev-redis           # Azure Managed Redis
mic-erp-be-dev-asb             # Azure Service Bus namespace
mic-erp-be-dev-mi              # User-assigned Managed Identity
mic-erp-be-dev-law             # Log Analytics Workspace
mic-erp-be-dev-ai              # Application Insights

Environment Tokens

TokenEnvironment
devDevelopment
stageStaging
preprodPre-Production
uatUser Acceptance Testing
productionProduction

Frontend Resource Naming

Resource Groups

Pattern: mic-erp-fr-{env}-{purpose}-rg

Purpose TokenUsageExample
storageBlob storage for SPA hostingmic-erp-fr-dev-storage-rg
swaStatic Web Appsmic-erp-fr-dev-swa-rg

Individual Frontend Resources

mic-erp-fr-dev-swa             # Static Web App (per MFE or all)

AFD Profiles Are Global, Not Per-Environment

AFD profiles (mic-erp-fd, mic-erp-fd-2, mic-erp-prod-fd) all live in the shared mic-erp-global-rg, not in per-environment frontend RGs. See Azure Front Door.


Storage and ACR (Alphanumeric Only)

Azure storage accounts and ACR names must be globally unique, alphanumeric, lowercase, 3–24 characters, no dashes.

ACR Naming Formula

replace('${resourcePrefix}${environment}acr', '-', '')

Note: production uses the short token prd (not production) in ACR/storage names:

mic-erp-be + dev + acr        →  strip dashes  →  micerpbedevacr
mic-erp-be + stage + acr                       →  micerpbestageacr
mic-erp-be + preprod + acr                     →  micerpbepreprodacr
mic-erp-be + uat + acr                         →  micerpbeuatacr
mic-erp-be + prd + acr                         →  micerpbeprdacr

Storage Account Naming

Backend storage (for attachments, data exports):

mic-erp-be + dev + sa  →  micerpbedevsa
mic-erp-be + prd + sa  →  micerpbeprdsa

Frontend storage (SPA static files):

mic-erp-fr + dev + sa  →  micerpfrdevsa
mic-erp-fr + prd + sa  →  micerpfrprdsa

Container App Names

Container apps use the pattern mic-erp-be-{envShort}-{imageName} where envShort is the short environment code:

Full EnvironmentenvShort
devdev
stagestg
preprodpp
uatuat
productionprd
mic-erp-be-dev-gateway-api         # Gateway.API (dev)
mic-erp-be-stg-gateway-api         # Gateway.API (stage)
mic-erp-be-prd-gateway-api         # Gateway.API (production)
mic-erp-be-dev-keycloak            # Keycloak identity server
mic-erp-be-dev-apps-portal-apis    # AppsPortal.Apis
mic-erp-be-dev-inventory-apis      # Inventory.Apis
mic-erp-be-dev-business-owners-apis # BusinessOwners.Apis
mic-erp-be-dev-attachment-apis     # Attachment.Apis
mic-erp-be-dev-notification-apis   # Notification.Apis
mic-erp-be-dev-workflows-apis      # Workflows.Apis

On-Prem Container Names

On-premises Docker containers follow the mic-{service} pattern:

mic-gateway        # API Gateway
mic-keycloak       # Keycloak
mic-redis          # Redis cache
mic-seq            # Seq logging
mic-servicebus       # Azure Service Bus namespace
mic-accounting     # Accounting service
mic-hr             # HR service

Key Vault Names (Exception)

Key Vault Names Do Not Follow the Formula

Key Vault names were assigned incrementally and cannot be migrated without updating all secret references across all pipeline configurations. Always use the actual names:

EnvironmentActual KV Name
devmic-erp-be-dev-skv
stagemic-erp-stg-kv
preprodmic-erp-be-preprod-skv
uatmic-erp-uat-kv
prod(contact platform team)

The inconsistency pattern: dev/preprod use mic-erp-be-{env}-skv; stage/uat use mic-erp-{env}-kv (missing be and uses short kv suffix). This is a known historical artifact.


Shared SQL Resource Group (Do Not Rename)

mic-backend-shared-sql-rg

Do NOT Rename

This resource group hosts the shared SQL Server VM (20.50.120.95) used by all environments. Renaming it would break:

  • Pipeline service connections
  • SQL provisioning scripts in Devops/azure/scripts/
  • Environment connection string templates

It was named before the mic-erp-be naming convention was established.


Orphan Resource Group

mic-erp-bk-dev-network-rg

This resource group is a leftover from the old naming convention that used bk (backend) instead of be. It is empty and harmless. It was identified during the naming convention refactor (Session 9, 2026-05-15) and flagged for deletion during the next environment cleanup cycle.

INFO

Do NOT confuse mic-erp-bk-* (old orphan) with mic-erp-be-* (current naming). Memory references previously said bk — this was corrected on 2026-05-15. All new resources use be.


Naming Decision Reference


Full Naming Cheat Sheet

Resource TypePatternExample (dev)
Backend RGmic-erp-be-{env}-{purpose}-rgmic-erp-be-dev-apps-public-rg
Frontend RGmic-erp-fr-{env}-{purpose}-rgmic-erp-fr-dev-storage-rg
Container Appmic-erp-be-{envShort}-{imageName}mic-erp-be-dev-gateway-api
Private CAEmic-erp-be-{env}-cae-privatemic-erp-be-dev-cae-private
Public CAEmic-erp-be-{env}-cae-publicmic-erp-be-dev-cae-public
ACRmicerpbe{envShort}acrmicerpbedevacr
Backend SAmicerpbe{envShort}samicerpbedevsa
Frontend SAmicerpfr{envShort}samicerpfrdevsa
Key Vault(use actual name)mic-erp-be-dev-skv
Redismic-erp-be-{env}-redismic-erp-be-dev-redis
Service Busmic-erp-be-{env}-asbmic-erp-be-dev-asb
Managed Identitymic-erp-be-{env}-mimic-erp-be-dev-mi
Log Analyticsmic-erp-be-{env}-lawmic-erp-be-dev-law
App Insightsmic-erp-be-{env}-aimic-erp-be-dev-ai
AFD profile (dev/stg)mic-erp-fdmic-erp-fd
AFD profile (pp/uat)mic-erp-fd-2mic-erp-fd-2
AFD profile (prod)mic-erp-prod-fdmic-erp-prod-fd
On-prem containermic-{service}mic-gateway

Internal Documentation — Microtec Platform Team