- 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>
75 lines
2.0 KiB
HCL
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
|
|
}
|