Files
the_order/infra/scripts/azure-sync-env-to-terraform.sh
defiQUG 6a8582e54d feat: comprehensive project structure improvements and Cloud for Sovereignty landing zone
- Add Cloud for Sovereignty landing zone architecture and deployment
- Implement complete legal document management system
- Reorganize documentation with improved navigation
- Add infrastructure improvements (Dockerfiles, K8s, monitoring)
- Add operational improvements (graceful shutdown, rate limiting, caching)
- Create comprehensive project structure documentation
- Add Azure deployment automation scripts
- Improve repository navigation and organization
2025-11-13 09:32:55 -08:00

67 lines
2.0 KiB
Bash
Executable File

#!/bin/bash
# Sync environment variables from .env to Terraform variables
# Ensures Terraform uses values from .env file
set -e
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
PROJECT_ROOT="$(cd "$SCRIPT_DIR/../.." && pwd)"
ENV_FILE="$PROJECT_ROOT/.env"
TERRAFORM_DIR="$PROJECT_ROOT/infra/terraform"
echo "🔄 Syncing environment variables to Terraform..."
# Load and validate environment
source "$SCRIPT_DIR/azure-validate-env.sh"
# Create terraform.tfvars from environment variables
TFVARS_FILE="$TERRAFORM_DIR/terraform.tfvars"
cat > "$TFVARS_FILE" << EOF
# Terraform variables generated from .env file
# DO NOT EDIT MANUALLY - regenerated by azure-sync-env-to-terraform.sh
# Last updated: $(date -u +"%Y-%m-%d %H:%M:%S UTC")
# Azure Configuration
azure_region = "${ARM_LOCATION:-westeurope}"
environment = "${TF_VAR_environment:-dev}"
project_name = "the-order"
# Azure Authentication (sensitive - use environment variables)
# subscription_id = "${ARM_SUBSCRIPTION_ID}"
# tenant_id = "${ARM_TENANT_ID}"
# client_id = "${ARM_CLIENT_ID:-}"
# client_secret = "${ARM_CLIENT_SECRET:-}"
# Resource Naming
resource_group_name = "${TF_VAR_resource_group_name}"
storage_account_name = "${TF_VAR_storage_account_name}"
key_vault_name = "${TF_VAR_key_vault_name}"
# AKS Configuration
aks_cluster_name = "${TF_VAR_aks_cluster_name:-the-order-aks-${TF_VAR_environment:-dev}}"
aks_node_count = ${TF_VAR_aks_node_count:-2}
aks_vm_size = "${TF_VAR_aks_vm_size:-Standard_B2s}"
# Database Configuration
database_name = "${TF_VAR_database_name:-the-order-db-${TF_VAR_environment:-dev}}"
database_admin_user = "${TF_VAR_database_admin_user:-theorder_admin}"
# Tags
tags = {
Environment = "${TF_VAR_environment:-dev}"
Project = "the-order"
ManagedBy = "terraform"
CreatedBy = "azure-sync-env-to-terraform.sh"
}
EOF
echo "✅ Terraform variables synced to: $TFVARS_FILE"
echo ""
echo "You can now run Terraform commands:"
echo " cd $TERRAFORM_DIR"
echo " terraform init"
echo " terraform plan"
echo " terraform apply"