mirror of
https://github.com/ysoftdevs/terraform-aws-eks.git
synced 2026-01-15 16:23:58 +01:00
* fix: Ensuring the correct service CIDR and IP family is used in the rendered user data * chore: Updates from testing and validating * chore: Fix example destroy instructions * fix: Only require `cluster_service_cidr` when `create = true` * chore: Clean up commented out code and add note on check length
107 lines
3.4 KiB
HCL
107 lines
3.4 KiB
HCL
variable "create" {
|
|
description = "Determines whether to create user-data or not"
|
|
type = bool
|
|
default = true
|
|
}
|
|
|
|
variable "platform" {
|
|
description = "Identifies if the OS platform is `bottlerocket`, `linux`, or `windows` based"
|
|
type = string
|
|
default = "linux"
|
|
}
|
|
|
|
variable "enable_bootstrap_user_data" {
|
|
description = "Determines whether the bootstrap configurations are populated within the user data template"
|
|
type = bool
|
|
default = false
|
|
}
|
|
|
|
variable "is_eks_managed_node_group" {
|
|
description = "Determines whether the user data is used on nodes in an EKS managed node group. Used to determine if user data will be appended or not"
|
|
type = bool
|
|
default = true
|
|
}
|
|
|
|
variable "cluster_name" {
|
|
description = "Name of the EKS cluster"
|
|
type = string
|
|
default = ""
|
|
}
|
|
|
|
variable "cluster_endpoint" {
|
|
description = "Endpoint of associated EKS cluster"
|
|
type = string
|
|
default = ""
|
|
}
|
|
|
|
variable "cluster_auth_base64" {
|
|
description = "Base64 encoded CA of associated EKS cluster"
|
|
type = string
|
|
default = ""
|
|
}
|
|
|
|
variable "cluster_service_cidr" {
|
|
description = "The CIDR block (IPv4 or IPv6) used by the cluster to assign Kubernetes service IP addresses. This is derived from the cluster itself"
|
|
type = string
|
|
default = ""
|
|
}
|
|
|
|
variable "cluster_ip_family" {
|
|
description = "The IP family used to assign Kubernetes pod and service addresses. Valid values are `ipv4` (default) and `ipv6`"
|
|
type = string
|
|
default = "ipv4"
|
|
}
|
|
|
|
# TODO - remove at next breaking change
|
|
variable "cluster_service_ipv4_cidr" {
|
|
description = "[Deprecated] The CIDR block to assign Kubernetes service IP addresses from. If you don't specify a block, Kubernetes assigns addresses from either the 10.100.0.0/16 or 172.20.0.0/16 CIDR blocks"
|
|
type = string
|
|
default = null
|
|
}
|
|
|
|
variable "pre_bootstrap_user_data" {
|
|
description = "User data that is injected into the user data script ahead of the EKS bootstrap script. Not used when `platform` = `bottlerocket`"
|
|
type = string
|
|
default = ""
|
|
}
|
|
|
|
variable "post_bootstrap_user_data" {
|
|
description = "User data that is appended to the user data script after of the EKS bootstrap script. Not used when `platform` = `bottlerocket`"
|
|
type = string
|
|
default = ""
|
|
}
|
|
|
|
variable "bootstrap_extra_args" {
|
|
description = "Additional arguments passed to the bootstrap script. When `platform` = `bottlerocket`; these are additional [settings](https://github.com/bottlerocket-os/bottlerocket#settings) that are provided to the Bottlerocket user data"
|
|
type = string
|
|
default = ""
|
|
}
|
|
|
|
variable "user_data_template_path" {
|
|
description = "Path to a local, custom user data template file to use when rendering user data"
|
|
type = string
|
|
default = ""
|
|
}
|
|
|
|
variable "cloudinit_pre_nodeadm" {
|
|
description = "Array of cloud-init document parts that are created before the nodeadm document part"
|
|
type = list(object({
|
|
content = string
|
|
content_type = optional(string)
|
|
filename = optional(string)
|
|
merge_type = optional(string)
|
|
}))
|
|
default = []
|
|
}
|
|
|
|
variable "cloudinit_post_nodeadm" {
|
|
description = "Array of cloud-init document parts that are created after the nodeadm document part"
|
|
type = list(object({
|
|
content = string
|
|
content_type = optional(string)
|
|
filename = optional(string)
|
|
merge_type = optional(string)
|
|
}))
|
|
default = []
|
|
}
|