modules/terraform/aws/eks/variables.tf (103 lines of code) (raw):

variable "run_id" { description = "The run id for eks cluster" type = string } variable "tags" { type = map(string) default = { } } variable "vpc_id" { description = "The vpc ID" type = string default = "" } variable "region" { description = "value of the region" type = string default = "us-east-2" } variable "k8s_machine_type" { description = "Value to replace EKS nodes instance_types" type = string default = null } variable "ena_express" { description = "Whether to enable ENA Express. This replaces the value under eks_managed_node_groups" type = bool default = null } variable "eks_config" { type = object({ role = string eks_name = string enable_karpenter = optional(bool, false) enable_cluster_autoscaler = optional(bool, false) vpc_name = string policy_arns = list(string) eks_managed_node_groups = list(object({ name = string ami_type = string instance_types = list(string) min_size = number max_size = number desired_size = number capacity_type = optional(string, "ON_DEMAND") labels = optional(map(string), {}) subnet_names = optional(list(string), null) ena_express = optional(bool, null) taints = optional(list(object({ key = string value = string effect = string })), []) block_device_mappings = optional(list(object({ device_name = string ebs = object({ delete_on_termination = optional(bool, true) iops = optional(number, null) throughput = optional(number, null) volume_size = optional(number, null) volume_type = optional(string, null) }) })), []) })) eks_addons = list(object({ name = string version = optional(string) service_account = optional(string) policy_arns = optional(list(string), []) configuration_values = optional(object({ env = optional(map(string)) })) vpc_cni_warm_prefix_target = optional(number, 1) before_compute = optional(bool, false) })) kubernetes_version = optional(string, null) auto_scaler_profile = optional(object({ balance_similar_node_groups = optional(bool, false) expander = optional(string, "random") max_graceful_termination_sec = optional(string, "600") max_node_provision_time = optional(string, "15m") max_unready_nodes = optional(number, 3) max_unready_percentage = optional(number, 45) new_pod_scale_up_delay = optional(string, "10s") scale_down_delay_after_add = optional(string, "10m") scale_down_delay_after_delete = optional(string, "10s") scale_down_delay_after_failure = optional(string, "3m") scale_down_unneeded = optional(string, "10m") scale_down_unready = optional(string, "20m") scale_down_utilization_threshold = optional(string, "0.5") scan_interval = optional(string, "10s") empty_bulk_delete_max = optional(string, "10") skip_nodes_with_local_storage = optional(bool, true) skip_nodes_with_system_pods = optional(bool, true) })) enable_cni_metrics_helper = optional(bool, false) }) } variable "user_data_path" { description = "The path to the user data file" type = string default = "" }