125 lines
3.9 KiB
HCL
125 lines
3.9 KiB
HCL
variable "namespace" {
|
|
type = string
|
|
description = "Namespace, which could be your organization name, e.g. 'eg' or 'cp'"
|
|
default = ""
|
|
}
|
|
|
|
variable "stage" {
|
|
type = string
|
|
description = "Stage, e.g. 'prod', 'staging', 'dev', or 'test'"
|
|
default = ""
|
|
}
|
|
|
|
variable "name" {
|
|
type = string
|
|
description = "Solution name, e.g. 'app' or 'cluster'"
|
|
}
|
|
|
|
variable "delimiter" {
|
|
type = string
|
|
default = "-"
|
|
description = "Delimiter to be used between `namespace`, `stage`, `name` and `attributes`"
|
|
}
|
|
|
|
variable "attributes" {
|
|
type = list(string)
|
|
default = []
|
|
description = "Additional attributes (e.g. `1`)"
|
|
}
|
|
|
|
variable "tags" {
|
|
type = map(string)
|
|
default = {}
|
|
description = "Additional tags (e.g. `{ BusinessUnit = \"XYZ\" }`"
|
|
}
|
|
|
|
variable "enabled" {
|
|
type = bool
|
|
description = "Whether to create the resources. Set to `false` to prevent the module from creating any resources"
|
|
default = true
|
|
}
|
|
|
|
variable "cluster_name" {
|
|
type = string
|
|
description = "The name of the EKS cluster"
|
|
}
|
|
|
|
variable "ec2_ssh_key" {
|
|
type = string
|
|
description = "SSH key name that should be used to access the worker nodes"
|
|
default = null
|
|
}
|
|
|
|
variable "desired_size" {
|
|
type = number
|
|
description = "Desired number of worker nodes"
|
|
}
|
|
|
|
variable "max_size" {
|
|
type = number
|
|
description = "Maximum number of worker nodes"
|
|
}
|
|
|
|
variable "min_size" {
|
|
type = number
|
|
description = "Minimum number of worker nodes"
|
|
}
|
|
|
|
variable "subnet_ids" {
|
|
description = "A list of subnet IDs to launch resources in"
|
|
type = list(string)
|
|
}
|
|
|
|
variable "existing_workers_role_policy_arns" {
|
|
type = list(string)
|
|
default = []
|
|
description = "List of existing policy ARNs that will be attached to the workers default role on creation"
|
|
}
|
|
|
|
variable "existing_workers_role_policy_arns_count" {
|
|
type = number
|
|
default = 0
|
|
description = "Count of existing policy ARNs that will be attached to the workers default role on creation. Needed to prevent Terraform error `count can't be computed`"
|
|
}
|
|
|
|
variable "ami_type" {
|
|
type = string
|
|
description = "Type of Amazon Machine Image (AMI) associated with the EKS Node Group. Defaults to `AL2_x86_64`. Valid values: `AL2_x86_64`, `AL2_x86_64_GPU`. Terraform will only perform drift detection if a configuration value is provided"
|
|
default = "AL2_x86_64"
|
|
}
|
|
|
|
variable "disk_size" {
|
|
type = number
|
|
description = "Disk size in GiB for worker nodes. Defaults to 20. Terraform will only perform drift detection if a configuration value is provided"
|
|
default = 20
|
|
}
|
|
|
|
variable "instance_types" {
|
|
type = list(string)
|
|
description = "Set of instance types associated with the EKS Node Group. Defaults to [\"t3.medium\"]. Terraform will only perform drift detection if a configuration value is provided"
|
|
}
|
|
|
|
variable "kubernetes_labels" {
|
|
type = map(string)
|
|
description = "Key-value mapping of Kubernetes labels. Only labels that are applied with the EKS API are managed by this argument. Other Kubernetes labels applied to the EKS Node Group will not be managed"
|
|
default = {}
|
|
}
|
|
|
|
variable "ami_release_version" {
|
|
type = string
|
|
description = "AMI version of the EKS Node Group. Defaults to latest version for Kubernetes version"
|
|
default = null
|
|
}
|
|
|
|
variable "kubernetes_version" {
|
|
type = string
|
|
description = "Kubernetes version. Defaults to EKS Cluster Kubernetes version. Terraform will only perform drift detection if a configuration value is provided"
|
|
default = null
|
|
}
|
|
|
|
variable "source_security_group_ids" {
|
|
type = list(string)
|
|
default = []
|
|
description = "Set of EC2 Security Group IDs to allow SSH access (port 22) from on the worker nodes. If you specify `ec2_ssh_key`, but do not specify this configuration when you create an EKS Node Group, port 22 on the worker nodes is opened to the Internet (0.0.0.0/0)"
|
|
}
|