mirror of
https://github.com/ysoftdevs/terraform-aws-eks.git
synced 2026-05-01 21:04:27 +02:00
feat!: Add support for Outposts, remove node security group, add support for addon preserve and most_recent configurations (#2250)
Co-authored-by: Anton Babenko <anton@antonbabenko.com> Resolves undefined
This commit is contained in:
@@ -72,8 +72,14 @@ variable "create_launch_template" {
|
||||
default = true
|
||||
}
|
||||
|
||||
variable "launch_template_id" {
|
||||
description = "The ID of an existing launch template to use. Required when `create_launch_template` = `false`"
|
||||
type = string
|
||||
default = ""
|
||||
}
|
||||
|
||||
variable "launch_template_name" {
|
||||
description = "Launch template name - either to be created (`var.create_launch_template` = `true`) or existing (`var.create_launch_template` = `false`)"
|
||||
description = "Name of launch template to be created"
|
||||
type = string
|
||||
default = null
|
||||
}
|
||||
@@ -152,7 +158,7 @@ variable "credit_specification" {
|
||||
|
||||
variable "elastic_gpu_specifications" {
|
||||
description = "The elastic GPU to attach to the instance"
|
||||
type = map(string)
|
||||
type = any
|
||||
default = {}
|
||||
}
|
||||
|
||||
@@ -180,9 +186,15 @@ variable "instance_market_options" {
|
||||
default = {}
|
||||
}
|
||||
|
||||
variable "maintenance_options" {
|
||||
description = "The maintenance options for the instance"
|
||||
type = any
|
||||
default = {}
|
||||
}
|
||||
|
||||
variable "license_specifications" {
|
||||
description = "A list of license specifications to associate with"
|
||||
type = map(string)
|
||||
description = "A map of license specifications to associate with"
|
||||
type = any
|
||||
default = {}
|
||||
}
|
||||
|
||||
@@ -198,6 +210,12 @@ variable "placement" {
|
||||
default = {}
|
||||
}
|
||||
|
||||
variable "private_dns_name_options" {
|
||||
description = "The options for the instance hostname. The default values are inherited from the subnet"
|
||||
type = map(string)
|
||||
default = {}
|
||||
}
|
||||
|
||||
variable "ebs_optimized" {
|
||||
description = "If true, the launched EC2 instance will be EBS-optimized"
|
||||
type = bool
|
||||
@@ -216,6 +234,12 @@ variable "cluster_version" {
|
||||
default = null
|
||||
}
|
||||
|
||||
variable "instance_requirements" {
|
||||
description = "The attribute requirements for the type of instance. If present then `instance_type` cannot be present"
|
||||
type = any
|
||||
default = {}
|
||||
}
|
||||
|
||||
variable "instance_type" {
|
||||
description = "The type of the instance to launch"
|
||||
type = string
|
||||
@@ -320,6 +344,12 @@ variable "desired_size" {
|
||||
default = 1
|
||||
}
|
||||
|
||||
variable "context" {
|
||||
description = "Reserved"
|
||||
type = string
|
||||
default = null
|
||||
}
|
||||
|
||||
variable "capacity_rebalance" {
|
||||
description = "Indicates whether capacity rebalance is enabled"
|
||||
type = bool
|
||||
@@ -350,6 +380,12 @@ variable "default_cooldown" {
|
||||
default = null
|
||||
}
|
||||
|
||||
variable "default_instance_warmup" {
|
||||
description = "Amount of time, in seconds, until a newly launched instance can contribute to the Amazon CloudWatch metrics. This delay lets an instance finish initializing before Amazon EC2 Auto Scaling aggregates instance metrics, resulting in more reliable usage data"
|
||||
type = number
|
||||
default = null
|
||||
}
|
||||
|
||||
variable "protect_from_scale_in" {
|
||||
description = "Allows setting instance protection. The autoscaling group will not select instances with this setting for termination during scale in events."
|
||||
type = bool
|
||||
@@ -386,6 +422,12 @@ variable "force_delete" {
|
||||
default = null
|
||||
}
|
||||
|
||||
variable "force_delete_warm_pool" {
|
||||
description = "Allows deleting the Auto Scaling Group without waiting for all instances in the warm pool to terminate"
|
||||
type = bool
|
||||
default = null
|
||||
}
|
||||
|
||||
variable "termination_policies" {
|
||||
description = "A list of policies to decide how the instances in the Auto Scaling Group should be terminated. The allowed values are `OldestInstance`, `NewestInstance`, `OldestLaunchConfiguration`, `ClosestToNextInstanceHour`, `OldestLaunchTemplate`, `AllocationStrategy`, `Default`"
|
||||
type = list(string)
|
||||
@@ -431,7 +473,12 @@ variable "initial_lifecycle_hooks" {
|
||||
variable "instance_refresh" {
|
||||
description = "If this block is configured, start an Instance Refresh when this Auto Scaling Group is updated"
|
||||
type = any
|
||||
default = {}
|
||||
default = {
|
||||
strategy = "Rolling"
|
||||
preferences = {
|
||||
min_healthy_percentage = 66
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
variable "use_mixed_instances_policy" {
|
||||
@@ -458,12 +505,6 @@ variable "delete_timeout" {
|
||||
default = null
|
||||
}
|
||||
|
||||
variable "use_default_tags" {
|
||||
description = "Enables/disables the use of provider default tags in the tag_specifications of the Auto Scaling group"
|
||||
type = bool
|
||||
default = false
|
||||
}
|
||||
|
||||
variable "autoscaling_group_tags" {
|
||||
description = "A map of additional tags to add to the autoscaling group created. Tags are applied to the autoscaling group only and are NOT propagated to instances"
|
||||
type = map(string)
|
||||
@@ -486,58 +527,6 @@ variable "schedules" {
|
||||
default = {}
|
||||
}
|
||||
|
||||
################################################################################
|
||||
# Security Group
|
||||
################################################################################
|
||||
|
||||
variable "create_security_group" {
|
||||
description = "Determines whether to create a security group"
|
||||
type = bool
|
||||
default = true
|
||||
}
|
||||
|
||||
variable "security_group_name" {
|
||||
description = "Name to use on security group created"
|
||||
type = string
|
||||
default = null
|
||||
}
|
||||
|
||||
variable "security_group_use_name_prefix" {
|
||||
description = "Determines whether the security group name (`security_group_name`) is used as a prefix"
|
||||
type = bool
|
||||
default = true
|
||||
}
|
||||
|
||||
variable "security_group_description" {
|
||||
description = "Description for the security group created"
|
||||
type = string
|
||||
default = "EKS self-managed node group security group"
|
||||
}
|
||||
|
||||
variable "vpc_id" {
|
||||
description = "ID of the VPC where the security group/nodes will be provisioned"
|
||||
type = string
|
||||
default = null
|
||||
}
|
||||
|
||||
variable "security_group_rules" {
|
||||
description = "List of security group rules to add to the security group created"
|
||||
type = any
|
||||
default = {}
|
||||
}
|
||||
|
||||
variable "cluster_security_group_id" {
|
||||
description = "Cluster control plane security group ID"
|
||||
type = string
|
||||
default = null
|
||||
}
|
||||
|
||||
variable "security_group_tags" {
|
||||
description = "A map of additional tags to add to the security group created"
|
||||
type = map(string)
|
||||
default = {}
|
||||
}
|
||||
|
||||
################################################################################
|
||||
# IAM Role
|
||||
################################################################################
|
||||
@@ -598,8 +587,8 @@ variable "iam_role_attach_cni_policy" {
|
||||
|
||||
variable "iam_role_additional_policies" {
|
||||
description = "Additional policies to be added to the IAM role"
|
||||
type = list(string)
|
||||
default = []
|
||||
type = map(string)
|
||||
default = {}
|
||||
}
|
||||
|
||||
variable "iam_role_tags" {
|
||||
|
||||
Reference in New Issue
Block a user