Files
the_order/infra/terraform/NAMING_VALIDATION.md
defiQUG 8649ad4124 feat: implement naming convention, deployment automation, and infrastructure updates
- Add comprehensive naming convention (provider-region-resource-env-purpose)
- Implement Terraform locals for centralized naming
- Update all Terraform resources to use new naming convention
- Create deployment automation framework (18 phase scripts)
- Add Azure setup scripts (provider registration, quota checks)
- Update deployment scripts config with naming functions
- Create complete deployment documentation (guide, steps, quick reference)
- Add frontend portal implementations (public and internal)
- Add UI component library (18 components)
- Enhance Entra VerifiedID integration with file utilities
- Add API client package for all services
- Create comprehensive documentation (naming, deployment, next steps)

Infrastructure:
- Resource groups, storage accounts with new naming
- Terraform configuration updates
- Outputs with naming convention examples

Deployment:
- Automated deployment scripts for all 15 phases
- State management and logging
- Error handling and validation

Documentation:
- Naming convention guide and implementation summary
- Complete deployment guide (296 steps)
- Next steps and quick start guides
- Azure prerequisites and setup completion docs

Note: ESLint warnings present - will be addressed in follow-up commit
2025-11-12 08:22:51 -08:00

56 lines
1.4 KiB
Markdown

# Naming Validation
This document provides validation rules and examples for the naming convention.
## Validation Rules
### Resource Group Names
- **Pattern**: `az-{region}-rg-{env}-{purpose}`
- **Example**: `az-we-rg-dev-main`
- **Validation**: `^az-[a-z]{2}-rg-(dev|stg|prd|mgmt)-[a-z]{3,15}$`
### Storage Account Names
- **Pattern**: `az{region}sa{env}{purpose}`
- **Example**: `azwesadevdata`
- **Max Length**: 24 characters
- **Validation**: `^az[a-z]{2}sa(dev|stg|prd|mgmt)[a-z]{3,10}$`
### Key Vault Names
- **Pattern**: `az-{region}-kv-{env}-{purpose}`
- **Example**: `az-we-kv-dev-main`
- **Max Length**: 24 characters
- **Validation**: `^az-[a-z]{2}-kv-(dev|stg|prd|mgmt)-[a-z]{3,10}$`
### AKS Cluster Names
- **Pattern**: `az-{region}-aks-{env}-{purpose}`
- **Example**: `az-we-aks-dev-main`
- **Max Length**: 63 characters
- **Validation**: `^az-[a-z]{2}-aks-(dev|stg|prd|mgmt)-[a-z]{3,15}$`
### Container Registry Names
- **Pattern**: `az{region}acr{env}`
- **Example**: `azweacrdev`
- **Max Length**: 50 characters
- **Validation**: `^az[a-z]{2}acr(dev|stg|prd|mgmt)$`
## Testing
Run Terraform validation:
```bash
cd infra/terraform
terraform validate
terraform plan
```
Check name lengths:
```bash
# Storage accounts must be <= 24 chars
echo "azwesadevdata" | wc -c # Should be <= 24
# Key Vaults must be <= 24 chars
echo "az-we-kv-dev-main" | wc -c # Should be <= 24
```