Skip to content

ConX Infrastructure

Terraform infrastructure for Consumer Experience (ConX) platform on Azure.

Prerequisites

  • Terraform (no specific version required)
  • Azure CLI >= 2.50.0
  • Azure subscription access
  • Git

Provider Versions

Provider Version Purpose
azurerm ~> 3.117.1 Main Azure resources
azuread ~> 2.30.0 Azure AD resources
random ~> 3.5.1 Random resource generation

Note: Multiple azurerm provider aliases used for cross-subscription resources

Overview

Multi-environment Terraform configurations for deploying the Consumer Experience infrastructure including web applications, APIs, databases, networking, monitoring, and Front Door.

Repository Structure

conx-infrastructure/
├── environments/       # Environment-specific configurations (dev/qa/uat/prod)
├── modules/           # Reusable Terraform modules
│   ├── azure_monitor/ # Monitoring and alerting
│   ├── ConXAdmin/     # ConX Admin application
│   └── ConXHomePortal/# ConX Home Portal
└── resources/         # Main infrastructure resources module

Environments

Environment Subscription Purpose
dev Enterprise Dev/Test Development and testing
qa Enterprise Dev/Test Quality assurance
uat Microsoft Azure Enterprise User acceptance testing
prod Microsoft Azure Enterprise Production workloads

Quick Reference

Authentication

az login --tenant 57d88166-f247-4dee-a6f9-e6359f96ff2c
az account set --subscription <SUBSCRIPTION>
cd environments/dev
terraform init
Dev/QA Subscription: - Enterprise Dev/Test - <dev-qa-subscription-id>

UAT/Prod Subscription: - Microsoft Azure Enterprise - <uat-prod-subscription-id>

State Management

  • Storage Account: cmgsharedapptfstore<env>01
  • Container: conx
  • State files: <env>.conx-infrastructure.tfstate

Naming Convention

{Company}{Product}{ResourceType}{Environment}01

Examples: - CmgCxRgDev01 - Resource Group - CmgCxUiAppDev01 - UI App Service - CmgCxSqlDev01 - SQL Server

Required Tags

  • Budget: Consumer Experience
  • Owner: CmgAppTeam
  • Environment: DEV/QA/UAT/PROD
  • Product: Consumer Experience
  • Application: Consumer Experience

Modules

Security

  • Secrets stored in Azure Key Vault
  • Private endpoints for PaaS services
  • VNet integration for App Services
  • Network isolation via VNets and subnets

Documentation

Support

For issues or questions, contact the CMG DevOps team.