Files
the_order/infra/terraform/main.tf
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

55 lines
1.3 KiB
HCL

# Terraform configuration for The Order infrastructure
# Azure provider configuration - No US Commercial or Government regions
# Version constraints are in versions.tf
# Configure the Azure Provider
provider "azurerm" {
features {
resource_group {
prevent_deletion_if_contains_resources = false
}
key_vault {
purge_soft_delete_on_destroy = true
}
}
# Default location - West Europe (no US regions)
# This can be overridden per resource if needed
location = var.azure_region
}
# Variables
variable "azure_region" {
description = "Azure region (default: westeurope, no US regions allowed)"
type = string
default = "westeurope"
validation {
condition = !can(regex("^us", var.azure_region))
error_message = "US Commercial and Government regions are not allowed. Use European or other non-US regions."
}
}
variable "environment" {
description = "Environment name (dev, stage, prod)"
type = string
default = "dev"
validation {
condition = contains(["dev", "stage", "prod"], var.environment)
error_message = "Environment must be dev, stage, or prod."
}
}
# Outputs
output "environment" {
description = "Environment name"
value = var.environment
}
output "azure_region" {
description = "Azure region being used"
value = var.azure_region
}