titan-iac/terraform/aether/variables.tf
jenkins 0da9e4c82d refactor: restructure services layout, retire oceanus, add aether scaffolding
- Move flat service manifests into structured subdirs (apps/, bootstrap-jobs/,
  repair-jobs/, migration-jobs/, validation-jobs/, node-ops/, networking/)
- Retire oneoffs/ directories across services
- Remove oceanus cluster and its host roles; add aether cluster + terraform scaffolding
- Reorganize scripts/ into ops/, render/, sync/, manual-tests/
- Add Makefile with render/validate/test/flux targets and repo-structure tests
- Update flux-system application CRs to the new paths
- Add hermes-automated-triage-24h-plan knowledge doc (+ comms mirror)
- Refresh knowledge catalogs, dashboards, vmalert rules, quality contract

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-05 16:21:36 -03:00

75 lines
2.0 KiB
HCL

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
}