mirror of
https://github.com/karpathy/nanochat.git
synced 2026-05-09 01:10:10 +00:00
Add reusable Terraform modules and per-environment configs (dev/uat/prod) in us-west-2 covering: VPC (3 AZ public/private), EKS 1.29 with IRSA and ALB/EBS/EFS CSI add-ons, RDS PostgreSQL 15, four ECR repos, IAM roles (EKS node, ALB controller IRSA, GitHub Actions OIDC), Route53 + ACM for samosachaat.art, and EFS for model weights. State backend on S3 (samosachaat-terraform-state) with DynamoDB lock table. terraform validate passes for dev, uat, and prod. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
51 lines
1.1 KiB
HCL
51 lines
1.1 KiB
HCL
variable "cluster_name" {
|
|
description = "EKS cluster name."
|
|
type = string
|
|
}
|
|
|
|
variable "cluster_version" {
|
|
description = "Kubernetes version for the EKS control plane."
|
|
type = string
|
|
default = "1.29"
|
|
}
|
|
|
|
variable "vpc_id" {
|
|
description = "VPC the cluster lives in."
|
|
type = string
|
|
}
|
|
|
|
variable "private_subnet_ids" {
|
|
description = "Private subnets for nodes and control-plane ENIs."
|
|
type = list(string)
|
|
}
|
|
|
|
variable "node_instance_type" {
|
|
description = "EC2 instance type for the managed node group."
|
|
type = string
|
|
default = "t3.large"
|
|
}
|
|
|
|
variable "node_min_size" {
|
|
description = "Minimum nodes in the managed node group."
|
|
type = number
|
|
default = 2
|
|
}
|
|
|
|
variable "node_max_size" {
|
|
description = "Maximum nodes in the managed node group."
|
|
type = number
|
|
default = 4
|
|
}
|
|
|
|
variable "node_desired_size" {
|
|
description = "Desired nodes in the managed node group."
|
|
type = number
|
|
default = 2
|
|
}
|
|
|
|
variable "tags" {
|
|
description = "Tags applied to every resource."
|
|
type = map(string)
|
|
default = {}
|
|
}
|