Terraform changes for 3-pool node split: - New `platform` pool resource (DEV1-L, databases + monitoring) - Renamed `services` → `foxhunt` pool (DEV1-L, max_size 1) - Updated variables, outputs, and live terragrunt inputs - Updated implementation plan with Terraform-based workflow Apply in 2 phases: Phase 1: terragrunt apply -target=scaleway_k8s_pool.platform Phase 2: terragrunt apply (after databases migrated to platform) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
132 lines
3.2 KiB
HCL
132 lines
3.2 KiB
HCL
variable "region" {
|
|
description = "Scaleway region for the Kapsule cluster"
|
|
type = string
|
|
}
|
|
|
|
variable "cluster_name" {
|
|
description = "Name of the Kubernetes cluster"
|
|
type = string
|
|
default = "foxhunt"
|
|
}
|
|
|
|
variable "k8s_version" {
|
|
description = "Kubernetes version for the Kapsule cluster"
|
|
type = string
|
|
default = "1.34"
|
|
}
|
|
|
|
variable "foxhunt_type" {
|
|
description = "Instance type for the foxhunt app services node pool"
|
|
type = string
|
|
default = "DEV1-L"
|
|
}
|
|
|
|
variable "foxhunt_max_size" {
|
|
description = "Maximum number of nodes in the foxhunt pool (autoscaling)"
|
|
type = number
|
|
default = 1
|
|
}
|
|
|
|
variable "enable_platform_pool" {
|
|
description = "Create dedicated node pool for platform infrastructure (databases, monitoring)"
|
|
type = bool
|
|
default = false
|
|
}
|
|
|
|
variable "platform_type" {
|
|
description = "Instance type for the platform infrastructure node pool"
|
|
type = string
|
|
default = "DEV1-L"
|
|
}
|
|
|
|
variable "enable_gitlab_pool" {
|
|
description = "Create dedicated node pool for GitLab CE"
|
|
type = bool
|
|
default = false
|
|
}
|
|
|
|
variable "gitlab_type" {
|
|
description = "Instance type for the GitLab node pool"
|
|
type = string
|
|
default = "DEV1-L"
|
|
}
|
|
|
|
variable "enable_ci_rl_pool" {
|
|
description = "Create L4 GPU node pool for RL training + hyperopt"
|
|
type = bool
|
|
default = false
|
|
}
|
|
|
|
variable "ci_rl_type" {
|
|
description = "Instance type for the CI RL pool (L4 for DQN/PPO training)"
|
|
type = string
|
|
default = "L4-1-24G"
|
|
}
|
|
|
|
variable "ci_rl_max_size" {
|
|
description = "Maximum number of nodes in the CI RL pool"
|
|
type = number
|
|
default = 1
|
|
}
|
|
|
|
variable "enable_ci_training_pool" {
|
|
description = "Create L40S GPU node pool for training + hyperopt"
|
|
type = bool
|
|
default = false
|
|
}
|
|
|
|
variable "ci_training_type" {
|
|
description = "Instance type for the CI training pool (L40S for 48GB VRAM training)"
|
|
type = string
|
|
default = "L40S-1-48G"
|
|
}
|
|
|
|
variable "ci_training_max_size" {
|
|
description = "Maximum number of nodes in the CI training pool"
|
|
type = number
|
|
default = 1
|
|
}
|
|
|
|
variable "enable_ci_compile_cpu_pool" {
|
|
description = "Create high-CPU node pool for CI compilation (no GPU needed)"
|
|
type = bool
|
|
default = false
|
|
}
|
|
|
|
variable "ci_compile_cpu_type" {
|
|
description = "Instance type for the CPU compile pool (32 vCPU, 128GB RAM, no GPU)"
|
|
type = string
|
|
default = "POP2-32C-128G"
|
|
}
|
|
|
|
variable "ci_compile_cpu_max_size" {
|
|
description = "Maximum number of nodes in the CPU compile pool"
|
|
type = number
|
|
default = 1
|
|
}
|
|
|
|
variable "enable_dev_pool" {
|
|
description = "Create CPU node pool for remote development (DevPod)"
|
|
type = bool
|
|
default = false
|
|
}
|
|
|
|
variable "dev_pool_type" {
|
|
description = "Instance type for the dev node pool"
|
|
type = string
|
|
default = "GP1-L"
|
|
}
|
|
|
|
variable "dev_pool_max_size" {
|
|
description = "Maximum number of nodes in the dev pool"
|
|
type = number
|
|
default = 1
|
|
}
|
|
|
|
variable "public_ip_disabled" {
|
|
description = "Disable public IPs on all node pools (requires Public Gateway for egress)"
|
|
type = bool
|
|
default = false
|
|
}
|
|
|