variable "aws_region" { type = string description = "AWS region used for Aether lab resources." default = "us-east-1" } variable "aws_profile" { type = string description = "Optional AWS CLI profile name for the target account." default = null } variable "allowed_account_ids" { type = list(string) description = "Optional allow-list for the AWS account IDs Terraform may touch." default = [] } variable "name_prefix" { type = string description = "Short name used as the prefix for Aether resources." default = "aether" validation { condition = can(regex("^[a-z][a-z0-9-]{1,30}[a-z0-9]$", var.name_prefix)) error_message = "name_prefix must be lowercase kebab-case and start/end with an alphanumeric character." } } variable "environment" { type = string description = "Aether environment name." default = "lab" validation { condition = contains(["lab", "sandbox", "test"], var.environment) error_message = "environment must be one of: lab, sandbox, test." } } variable "enable_budget" { type = bool description = "Create a small AWS Budget for the account." default = false } variable "monthly_budget_usd" { type = number description = "Monthly budget amount when enable_budget is true." default = 1 validation { condition = var.monthly_budget_usd >= 1 && var.monthly_budget_usd <= 25 error_message = "monthly_budget_usd must stay between 1 and 25 for the Aether lab." } } variable "budget_alert_email" { type = string description = "Optional email subscriber for AWS Budget notifications." default = null } variable "permit_paid_resources" { type = bool description = "Set true before enabling any resource that can create AWS spend." default = false } variable "enable_external_backup_bucket" { type = bool description = "Create a versioned S3 bucket for small Atlas offsite backup tests." default = false }