From 0eac7f6b49ab7f7373f3a534a5daeeb61d90996e Mon Sep 17 00:00:00 2001 From: Kasper Jacobsen Date: Fri, 10 Jan 2025 08:00:25 +0100 Subject: [PATCH 1/4] feat: add var.node_repair_config to eks-managed-node-group Fixes terraform-aws-modules/terraform-aws-eks#3249 --- modules/eks-managed-node-group/main.tf | 8 ++++++++ modules/eks-managed-node-group/variables.tf | 6 ++++++ node_groups.tf | 2 ++ versions.tf | 2 +- 4 files changed, 17 insertions(+), 1 deletion(-) diff --git a/modules/eks-managed-node-group/main.tf b/modules/eks-managed-node-group/main.tf index 4b15c10b99..5f5c224204 100644 --- a/modules/eks-managed-node-group/main.tf +++ b/modules/eks-managed-node-group/main.tf @@ -458,6 +458,14 @@ resource "aws_eks_node_group" "this" { } } + dynamic "node_repair_config" { + for_each = var.node_repair_config_enabled ? [1] : [] + + content { + enabled = var.node_repair_config_enabled + } + } + timeouts { create = lookup(var.timeouts, "create", null) update = lookup(var.timeouts, "update", null) diff --git a/modules/eks-managed-node-group/variables.tf b/modules/eks-managed-node-group/variables.tf index b02f42cfcc..00df8fed3a 100644 --- a/modules/eks-managed-node-group/variables.tf +++ b/modules/eks-managed-node-group/variables.tf @@ -468,6 +468,12 @@ variable "update_config" { } } +variable "node_repair_config_enabled" { + description = "Determines whether to enable the node auto repair feature." + type = bool + default = false +} + variable "timeouts" { description = "Create, update, and delete timeout configurations for the node group" type = map(string) diff --git a/node_groups.tf b/node_groups.tf index d18101253b..04dfeb4a81 100644 --- a/node_groups.tf +++ b/node_groups.tf @@ -357,6 +357,8 @@ module "eks_managed_node_group" { launch_template_tags = try(each.value.launch_template_tags, var.eks_managed_node_group_defaults.launch_template_tags, {}) tag_specifications = try(each.value.tag_specifications, var.eks_managed_node_group_defaults.tag_specifications, ["instance", "volume", "network-interface"]) + node_repair_config_enabled = try(each.value.node_repair_config_enabled, var.eks_managed_node_group_defaults.node_repair_config_enabled, false) + ebs_optimized = try(each.value.ebs_optimized, var.eks_managed_node_group_defaults.ebs_optimized, null) key_name = try(each.value.key_name, var.eks_managed_node_group_defaults.key_name, null) disable_api_termination = try(each.value.disable_api_termination, var.eks_managed_node_group_defaults.disable_api_termination, null) diff --git a/versions.tf b/versions.tf index 33405ee6ba..4466790686 100644 --- a/versions.tf +++ b/versions.tf @@ -4,7 +4,7 @@ terraform { required_providers { aws = { source = "hashicorp/aws" - version = ">= 5.81" + version = ">= 5.83" } tls = { source = "hashicorp/tls" From 8ac9aca42396bd2a2bfa42bf38c988bd64612a69 Mon Sep 17 00:00:00 2001 From: Kasper Jacobsen Date: Fri, 10 Jan 2025 08:24:31 +0100 Subject: [PATCH 2/4] chore: run terraform-docs --- README.md | 4 ++-- modules/eks-managed-node-group/README.md | 1 + 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index ca83185353..1d5b5c07be 100644 --- a/README.md +++ b/README.md @@ -318,7 +318,7 @@ We are grateful to the community for contributing bugfixes and improvements! Ple | Name | Version | |------|---------| | [terraform](#requirement\_terraform) | >= 1.3.2 | -| [aws](#requirement\_aws) | >= 5.81 | +| [aws](#requirement\_aws) | >= 5.83 | | [time](#requirement\_time) | >= 0.9 | | [tls](#requirement\_tls) | >= 3.0 | @@ -326,7 +326,7 @@ We are grateful to the community for contributing bugfixes and improvements! Ple | Name | Version | |------|---------| -| [aws](#provider\_aws) | >= 5.81 | +| [aws](#provider\_aws) | >= 5.83 | | [time](#provider\_time) | >= 0.9 | | [tls](#provider\_tls) | >= 3.0 | diff --git a/modules/eks-managed-node-group/README.md b/modules/eks-managed-node-group/README.md index 5097c7573f..b5e8088f58 100644 --- a/modules/eks-managed-node-group/README.md +++ b/modules/eks-managed-node-group/README.md @@ -170,6 +170,7 @@ module "eks_managed_node_group" { | [min\_size](#input\_min\_size) | Minimum number of instances/nodes | `number` | `0` | no | | [name](#input\_name) | Name of the EKS managed node group | `string` | `""` | no | | [network\_interfaces](#input\_network\_interfaces) | Customize network interfaces to be attached at instance boot time | `list(any)` | `[]` | no | +| [node\_repair\_config\_enabled](#input\_node\_repair\_config\_enabled) | Determines whether to enable the node auto repair feature. | `bool` | `false` | no | | [placement](#input\_placement) | The placement of the instance | `map(string)` | `{}` | no | | [placement\_group\_az](#input\_placement\_group\_az) | Availability zone where placement group is created (ex. `eu-west-1c`) | `string` | `null` | no | | [placement\_group\_strategy](#input\_placement\_group\_strategy) | The placement group strategy | `string` | `"cluster"` | no | From 2378e31eea1f3484ec653b9be830c6cdd4b70582 Mon Sep 17 00:00:00 2001 From: Kasper Jacobsen Date: Fri, 10 Jan 2025 08:48:51 +0100 Subject: [PATCH 3/4] chore: update examples/eks-managed-node-group --- examples/eks-managed-node-group/eks-al2.tf | 11 +++++++---- examples/eks-managed-node-group/eks-al2023.tf | 11 +++++++---- examples/eks-managed-node-group/eks-bottlerocket.tf | 11 +++++++---- 3 files changed, 21 insertions(+), 12 deletions(-) diff --git a/examples/eks-managed-node-group/eks-al2.tf b/examples/eks-managed-node-group/eks-al2.tf index 910fa216b2..25d8b0132e 100644 --- a/examples/eks-managed-node-group/eks-al2.tf +++ b/examples/eks-managed-node-group/eks-al2.tf @@ -7,10 +7,11 @@ module "eks_al2" { # EKS Addons cluster_addons = { - coredns = {} - eks-pod-identity-agent = {} - kube-proxy = {} - vpc-cni = {} + coredns = {} + eks-pod-identity-agent = {} + kube-proxy = {} + vpc-cni = {} + eks-node-monitoring-agent = {} } vpc_id = module.vpc.vpc_id @@ -27,6 +28,8 @@ module "eks_al2" { # This value is ignored after the initial creation # https://github.com/bryantbiggs/eks-desired-size-hack desired_size = 2 + + node_repair_config_enabled = true } } diff --git a/examples/eks-managed-node-group/eks-al2023.tf b/examples/eks-managed-node-group/eks-al2023.tf index 349da821f9..ea60249456 100644 --- a/examples/eks-managed-node-group/eks-al2023.tf +++ b/examples/eks-managed-node-group/eks-al2023.tf @@ -7,10 +7,11 @@ module "eks_al2023" { # EKS Addons cluster_addons = { - coredns = {} - eks-pod-identity-agent = {} - kube-proxy = {} - vpc-cni = {} + coredns = {} + eks-pod-identity-agent = {} + kube-proxy = {} + vpc-cni = {} + eks-node-monitoring-agent = {} } vpc_id = module.vpc.vpc_id @@ -27,6 +28,8 @@ module "eks_al2023" { # https://github.com/bryantbiggs/eks-desired-size-hack desired_size = 2 + node_repair_config_enabled = true + # This is not required - demonstrates how to pass additional configuration to nodeadm # Ref https://awslabs.github.io/amazon-eks-ami/nodeadm/doc/api/ cloudinit_pre_nodeadm = [ diff --git a/examples/eks-managed-node-group/eks-bottlerocket.tf b/examples/eks-managed-node-group/eks-bottlerocket.tf index 01a6878814..f8a6f4497b 100644 --- a/examples/eks-managed-node-group/eks-bottlerocket.tf +++ b/examples/eks-managed-node-group/eks-bottlerocket.tf @@ -7,10 +7,11 @@ module "eks_bottlerocket" { # EKS Addons cluster_addons = { - coredns = {} - eks-pod-identity-agent = {} - kube-proxy = {} - vpc-cni = {} + coredns = {} + eks-pod-identity-agent = {} + kube-proxy = {} + vpc-cni = {} + eks-node-monitoring-agent = {} } vpc_id = module.vpc.vpc_id @@ -27,6 +28,8 @@ module "eks_bottlerocket" { # https://github.com/bryantbiggs/eks-desired-size-hack desired_size = 2 + node_repair_config_enabled = true + # This is not required - demonstrates how to pass additional configuration # Ref https://bottlerocket.dev/en/os/1.19.x/api/settings/ bootstrap_extra_args = <<-EOT From bdc2d3e63b7e71146bed77fd0548d42d4ecc0c15 Mon Sep 17 00:00:00 2001 From: Bryant Biggs Date: Fri, 17 Jan 2025 11:31:20 -0600 Subject: [PATCH 4/4] fix: Correct implementation --- examples/eks-auto-mode/README.md | 4 ++-- examples/eks-auto-mode/versions.tf | 2 +- examples/eks-hybrid-nodes/README.md | 6 +++--- examples/eks-hybrid-nodes/versions.tf | 2 +- examples/eks-managed-node-group/eks-al2.tf | 11 ++++------- examples/eks-managed-node-group/eks-al2023.tf | 11 ++++------- examples/eks-managed-node-group/eks-bottlerocket.tf | 11 ++++------- examples/eks-managed-node-group/versions.tf | 2 +- examples/karpenter/README.md | 6 +++--- examples/karpenter/versions.tf | 2 +- examples/self-managed-node-group/versions.tf | 2 +- modules/eks-managed-node-group/README.md | 6 +++--- modules/eks-managed-node-group/main.tf | 4 ++-- modules/eks-managed-node-group/variables.tf | 10 ++++++---- modules/eks-managed-node-group/versions.tf | 2 +- modules/fargate-profile/README.md | 4 ++-- modules/fargate-profile/versions.tf | 2 +- modules/hybrid-node-role/README.md | 4 ++-- modules/hybrid-node-role/versions.tf | 2 +- modules/karpenter/README.md | 4 ++-- modules/karpenter/versions.tf | 2 +- modules/self-managed-node-group/README.md | 4 ++-- modules/self-managed-node-group/versions.tf | 2 +- node_groups.tf | 12 +++++------- tests/eks-fargate-profile/README.md | 4 ++-- tests/eks-fargate-profile/versions.tf | 2 +- tests/eks-hybrid-nodes/README.md | 2 +- tests/eks-hybrid-nodes/versions.tf | 2 +- tests/eks-managed-node-group/README.md | 4 ++-- tests/eks-managed-node-group/main.tf | 7 +++++++ tests/eks-managed-node-group/versions.tf | 2 +- tests/fast-addons/README.md | 4 ++-- tests/fast-addons/versions.tf | 2 +- tests/self-managed-node-group/README.md | 4 ++-- tests/self-managed-node-group/versions.tf | 2 +- 35 files changed, 75 insertions(+), 77 deletions(-) diff --git a/examples/eks-auto-mode/README.md b/examples/eks-auto-mode/README.md index ee2095bf73..b2549472e9 100644 --- a/examples/eks-auto-mode/README.md +++ b/examples/eks-auto-mode/README.md @@ -25,13 +25,13 @@ Note that this example may create resources which cost money. Run `terraform des | Name | Version | |------|---------| | [terraform](#requirement\_terraform) | >= 1.3.2 | -| [aws](#requirement\_aws) | >= 5.81 | +| [aws](#requirement\_aws) | >= 5.83 | ## Providers | Name | Version | |------|---------| -| [aws](#provider\_aws) | >= 5.81 | +| [aws](#provider\_aws) | >= 5.83 | ## Modules diff --git a/examples/eks-auto-mode/versions.tf b/examples/eks-auto-mode/versions.tf index e31fee1f34..4736a5b5f7 100644 --- a/examples/eks-auto-mode/versions.tf +++ b/examples/eks-auto-mode/versions.tf @@ -4,7 +4,7 @@ terraform { required_providers { aws = { source = "hashicorp/aws" - version = ">= 5.81" + version = ">= 5.83" } } } diff --git a/examples/eks-hybrid-nodes/README.md b/examples/eks-hybrid-nodes/README.md index 5ca82dce20..9f1a602f58 100644 --- a/examples/eks-hybrid-nodes/README.md +++ b/examples/eks-hybrid-nodes/README.md @@ -26,7 +26,7 @@ Note that this example may create resources which cost money. Run `terraform des | Name | Version | |------|---------| | [terraform](#requirement\_terraform) | >= 1.3.2 | -| [aws](#requirement\_aws) | >= 5.81 | +| [aws](#requirement\_aws) | >= 5.83 | | [helm](#requirement\_helm) | >= 2.16 | | [http](#requirement\_http) | >= 3.4 | | [local](#requirement\_local) | >= 2.5 | @@ -36,8 +36,8 @@ Note that this example may create resources which cost money. Run `terraform des | Name | Version | |------|---------| -| [aws](#provider\_aws) | >= 5.81 | -| [aws.remote](#provider\_aws.remote) | >= 5.81 | +| [aws](#provider\_aws) | >= 5.83 | +| [aws.remote](#provider\_aws.remote) | >= 5.83 | | [helm](#provider\_helm) | >= 2.16 | | [http](#provider\_http) | >= 3.4 | | [local](#provider\_local) | >= 2.5 | diff --git a/examples/eks-hybrid-nodes/versions.tf b/examples/eks-hybrid-nodes/versions.tf index acdd4737dd..124db32301 100644 --- a/examples/eks-hybrid-nodes/versions.tf +++ b/examples/eks-hybrid-nodes/versions.tf @@ -4,7 +4,7 @@ terraform { required_providers { aws = { source = "hashicorp/aws" - version = ">= 5.81" + version = ">= 5.83" } helm = { source = "hashicorp/helm" diff --git a/examples/eks-managed-node-group/eks-al2.tf b/examples/eks-managed-node-group/eks-al2.tf index 25d8b0132e..910fa216b2 100644 --- a/examples/eks-managed-node-group/eks-al2.tf +++ b/examples/eks-managed-node-group/eks-al2.tf @@ -7,11 +7,10 @@ module "eks_al2" { # EKS Addons cluster_addons = { - coredns = {} - eks-pod-identity-agent = {} - kube-proxy = {} - vpc-cni = {} - eks-node-monitoring-agent = {} + coredns = {} + eks-pod-identity-agent = {} + kube-proxy = {} + vpc-cni = {} } vpc_id = module.vpc.vpc_id @@ -28,8 +27,6 @@ module "eks_al2" { # This value is ignored after the initial creation # https://github.com/bryantbiggs/eks-desired-size-hack desired_size = 2 - - node_repair_config_enabled = true } } diff --git a/examples/eks-managed-node-group/eks-al2023.tf b/examples/eks-managed-node-group/eks-al2023.tf index ea60249456..349da821f9 100644 --- a/examples/eks-managed-node-group/eks-al2023.tf +++ b/examples/eks-managed-node-group/eks-al2023.tf @@ -7,11 +7,10 @@ module "eks_al2023" { # EKS Addons cluster_addons = { - coredns = {} - eks-pod-identity-agent = {} - kube-proxy = {} - vpc-cni = {} - eks-node-monitoring-agent = {} + coredns = {} + eks-pod-identity-agent = {} + kube-proxy = {} + vpc-cni = {} } vpc_id = module.vpc.vpc_id @@ -28,8 +27,6 @@ module "eks_al2023" { # https://github.com/bryantbiggs/eks-desired-size-hack desired_size = 2 - node_repair_config_enabled = true - # This is not required - demonstrates how to pass additional configuration to nodeadm # Ref https://awslabs.github.io/amazon-eks-ami/nodeadm/doc/api/ cloudinit_pre_nodeadm = [ diff --git a/examples/eks-managed-node-group/eks-bottlerocket.tf b/examples/eks-managed-node-group/eks-bottlerocket.tf index f8a6f4497b..01a6878814 100644 --- a/examples/eks-managed-node-group/eks-bottlerocket.tf +++ b/examples/eks-managed-node-group/eks-bottlerocket.tf @@ -7,11 +7,10 @@ module "eks_bottlerocket" { # EKS Addons cluster_addons = { - coredns = {} - eks-pod-identity-agent = {} - kube-proxy = {} - vpc-cni = {} - eks-node-monitoring-agent = {} + coredns = {} + eks-pod-identity-agent = {} + kube-proxy = {} + vpc-cni = {} } vpc_id = module.vpc.vpc_id @@ -28,8 +27,6 @@ module "eks_bottlerocket" { # https://github.com/bryantbiggs/eks-desired-size-hack desired_size = 2 - node_repair_config_enabled = true - # This is not required - demonstrates how to pass additional configuration # Ref https://bottlerocket.dev/en/os/1.19.x/api/settings/ bootstrap_extra_args = <<-EOT diff --git a/examples/eks-managed-node-group/versions.tf b/examples/eks-managed-node-group/versions.tf index e31fee1f34..4736a5b5f7 100644 --- a/examples/eks-managed-node-group/versions.tf +++ b/examples/eks-managed-node-group/versions.tf @@ -4,7 +4,7 @@ terraform { required_providers { aws = { source = "hashicorp/aws" - version = ">= 5.81" + version = ">= 5.83" } } } diff --git a/examples/karpenter/README.md b/examples/karpenter/README.md index 473b1b49c6..f9eef90469 100644 --- a/examples/karpenter/README.md +++ b/examples/karpenter/README.md @@ -94,15 +94,15 @@ Note that this example may create resources which cost money. Run `terraform des | Name | Version | |------|---------| | [terraform](#requirement\_terraform) | >= 1.3.2 | -| [aws](#requirement\_aws) | >= 5.81 | +| [aws](#requirement\_aws) | >= 5.83 | | [helm](#requirement\_helm) | >= 2.7 | ## Providers | Name | Version | |------|---------| -| [aws](#provider\_aws) | >= 5.81 | -| [aws.virginia](#provider\_aws.virginia) | >= 5.81 | +| [aws](#provider\_aws) | >= 5.83 | +| [aws.virginia](#provider\_aws.virginia) | >= 5.83 | | [helm](#provider\_helm) | >= 2.7 | ## Modules diff --git a/examples/karpenter/versions.tf b/examples/karpenter/versions.tf index 08067c5339..fa41a8a35f 100644 --- a/examples/karpenter/versions.tf +++ b/examples/karpenter/versions.tf @@ -4,7 +4,7 @@ terraform { required_providers { aws = { source = "hashicorp/aws" - version = ">= 5.81" + version = ">= 5.83" } helm = { source = "hashicorp/helm" diff --git a/examples/self-managed-node-group/versions.tf b/examples/self-managed-node-group/versions.tf index e31fee1f34..4736a5b5f7 100644 --- a/examples/self-managed-node-group/versions.tf +++ b/examples/self-managed-node-group/versions.tf @@ -4,7 +4,7 @@ terraform { required_providers { aws = { source = "hashicorp/aws" - version = ">= 5.81" + version = ">= 5.83" } } } diff --git a/modules/eks-managed-node-group/README.md b/modules/eks-managed-node-group/README.md index b5e8088f58..24e3e9f678 100644 --- a/modules/eks-managed-node-group/README.md +++ b/modules/eks-managed-node-group/README.md @@ -64,13 +64,13 @@ module "eks_managed_node_group" { | Name | Version | |------|---------| | [terraform](#requirement\_terraform) | >= 1.3.2 | -| [aws](#requirement\_aws) | >= 5.81 | +| [aws](#requirement\_aws) | >= 5.83 | ## Providers | Name | Version | |------|---------| -| [aws](#provider\_aws) | >= 5.81 | +| [aws](#provider\_aws) | >= 5.83 | ## Modules @@ -170,7 +170,7 @@ module "eks_managed_node_group" { | [min\_size](#input\_min\_size) | Minimum number of instances/nodes | `number` | `0` | no | | [name](#input\_name) | Name of the EKS managed node group | `string` | `""` | no | | [network\_interfaces](#input\_network\_interfaces) | Customize network interfaces to be attached at instance boot time | `list(any)` | `[]` | no | -| [node\_repair\_config\_enabled](#input\_node\_repair\_config\_enabled) | Determines whether to enable the node auto repair feature. | `bool` | `false` | no | +| [node\_repair\_config](#input\_node\_repair\_config) | The node auto repair configuration for the node group |
object({
enabled = optional(bool, true)
})
| `null` | no | | [placement](#input\_placement) | The placement of the instance | `map(string)` | `{}` | no | | [placement\_group\_az](#input\_placement\_group\_az) | Availability zone where placement group is created (ex. `eu-west-1c`) | `string` | `null` | no | | [placement\_group\_strategy](#input\_placement\_group\_strategy) | The placement group strategy | `string` | `"cluster"` | no | diff --git a/modules/eks-managed-node-group/main.tf b/modules/eks-managed-node-group/main.tf index 5f5c224204..19a346613c 100644 --- a/modules/eks-managed-node-group/main.tf +++ b/modules/eks-managed-node-group/main.tf @@ -459,10 +459,10 @@ resource "aws_eks_node_group" "this" { } dynamic "node_repair_config" { - for_each = var.node_repair_config_enabled ? [1] : [] + for_each = var.node_repair_config != null ? [var.node_repair_config] : [] content { - enabled = var.node_repair_config_enabled + enabled = node_repair_config.value.enabled } } diff --git a/modules/eks-managed-node-group/variables.tf b/modules/eks-managed-node-group/variables.tf index 00df8fed3a..54338542c9 100644 --- a/modules/eks-managed-node-group/variables.tf +++ b/modules/eks-managed-node-group/variables.tf @@ -468,10 +468,12 @@ variable "update_config" { } } -variable "node_repair_config_enabled" { - description = "Determines whether to enable the node auto repair feature." - type = bool - default = false +variable "node_repair_config" { + description = "The node auto repair configuration for the node group" + type = object({ + enabled = optional(bool, true) + }) + default = null } variable "timeouts" { diff --git a/modules/eks-managed-node-group/versions.tf b/modules/eks-managed-node-group/versions.tf index e31fee1f34..4736a5b5f7 100644 --- a/modules/eks-managed-node-group/versions.tf +++ b/modules/eks-managed-node-group/versions.tf @@ -4,7 +4,7 @@ terraform { required_providers { aws = { source = "hashicorp/aws" - version = ">= 5.81" + version = ">= 5.83" } } } diff --git a/modules/fargate-profile/README.md b/modules/fargate-profile/README.md index 1db25fbf57..b636fbe386 100644 --- a/modules/fargate-profile/README.md +++ b/modules/fargate-profile/README.md @@ -29,13 +29,13 @@ module "fargate_profile" { | Name | Version | |------|---------| | [terraform](#requirement\_terraform) | >= 1.3.2 | -| [aws](#requirement\_aws) | >= 5.81 | +| [aws](#requirement\_aws) | >= 5.83 | ## Providers | Name | Version | |------|---------| -| [aws](#provider\_aws) | >= 5.81 | +| [aws](#provider\_aws) | >= 5.83 | ## Modules diff --git a/modules/fargate-profile/versions.tf b/modules/fargate-profile/versions.tf index e31fee1f34..4736a5b5f7 100644 --- a/modules/fargate-profile/versions.tf +++ b/modules/fargate-profile/versions.tf @@ -4,7 +4,7 @@ terraform { required_providers { aws = { source = "hashicorp/aws" - version = ">= 5.81" + version = ">= 5.83" } } } diff --git a/modules/hybrid-node-role/README.md b/modules/hybrid-node-role/README.md index 3f893571e3..4076fc35f5 100644 --- a/modules/hybrid-node-role/README.md +++ b/modules/hybrid-node-role/README.md @@ -75,13 +75,13 @@ module "eks_hybrid_node_role" { | Name | Version | |------|---------| | [terraform](#requirement\_terraform) | >= 1.3.2 | -| [aws](#requirement\_aws) | >= 5.81 | +| [aws](#requirement\_aws) | >= 5.83 | ## Providers | Name | Version | |------|---------| -| [aws](#provider\_aws) | >= 5.81 | +| [aws](#provider\_aws) | >= 5.83 | ## Modules diff --git a/modules/hybrid-node-role/versions.tf b/modules/hybrid-node-role/versions.tf index e31fee1f34..4736a5b5f7 100644 --- a/modules/hybrid-node-role/versions.tf +++ b/modules/hybrid-node-role/versions.tf @@ -4,7 +4,7 @@ terraform { required_providers { aws = { source = "hashicorp/aws" - version = ">= 5.81" + version = ">= 5.83" } } } diff --git a/modules/karpenter/README.md b/modules/karpenter/README.md index 8ef4729463..8baab9d8f6 100644 --- a/modules/karpenter/README.md +++ b/modules/karpenter/README.md @@ -86,13 +86,13 @@ module "karpenter" { | Name | Version | |------|---------| | [terraform](#requirement\_terraform) | >= 1.3.2 | -| [aws](#requirement\_aws) | >= 5.81 | +| [aws](#requirement\_aws) | >= 5.83 | ## Providers | Name | Version | |------|---------| -| [aws](#provider\_aws) | >= 5.81 | +| [aws](#provider\_aws) | >= 5.83 | ## Modules diff --git a/modules/karpenter/versions.tf b/modules/karpenter/versions.tf index e31fee1f34..4736a5b5f7 100644 --- a/modules/karpenter/versions.tf +++ b/modules/karpenter/versions.tf @@ -4,7 +4,7 @@ terraform { required_providers { aws = { source = "hashicorp/aws" - version = ">= 5.81" + version = ">= 5.83" } } } diff --git a/modules/self-managed-node-group/README.md b/modules/self-managed-node-group/README.md index b342044094..9fe09d0998 100644 --- a/modules/self-managed-node-group/README.md +++ b/modules/self-managed-node-group/README.md @@ -43,13 +43,13 @@ module "self_managed_node_group" { | Name | Version | |------|---------| | [terraform](#requirement\_terraform) | >= 1.3.2 | -| [aws](#requirement\_aws) | >= 5.81 | +| [aws](#requirement\_aws) | >= 5.83 | ## Providers | Name | Version | |------|---------| -| [aws](#provider\_aws) | >= 5.81 | +| [aws](#provider\_aws) | >= 5.83 | ## Modules diff --git a/modules/self-managed-node-group/versions.tf b/modules/self-managed-node-group/versions.tf index e31fee1f34..4736a5b5f7 100644 --- a/modules/self-managed-node-group/versions.tf +++ b/modules/self-managed-node-group/versions.tf @@ -4,7 +4,7 @@ terraform { required_providers { aws = { source = "hashicorp/aws" - version = ">= 5.81" + version = ">= 5.83" } } } diff --git a/node_groups.tf b/node_groups.tf index 04dfeb4a81..8101308441 100644 --- a/node_groups.tf +++ b/node_groups.tf @@ -323,11 +323,11 @@ module "eks_managed_node_group" { force_update_version = try(each.value.force_update_version, var.eks_managed_node_group_defaults.force_update_version, null) instance_types = try(each.value.instance_types, var.eks_managed_node_group_defaults.instance_types, null) labels = try(each.value.labels, var.eks_managed_node_group_defaults.labels, null) - - remote_access = try(each.value.remote_access, var.eks_managed_node_group_defaults.remote_access, {}) - taints = try(each.value.taints, var.eks_managed_node_group_defaults.taints, {}) - update_config = try(each.value.update_config, var.eks_managed_node_group_defaults.update_config, local.default_update_config) - timeouts = try(each.value.timeouts, var.eks_managed_node_group_defaults.timeouts, {}) + node_repair_config = try(each.value.node_repair_config, var.eks_managed_node_group_defaults.node_repair_config, null) + remote_access = try(each.value.remote_access, var.eks_managed_node_group_defaults.remote_access, {}) + taints = try(each.value.taints, var.eks_managed_node_group_defaults.taints, {}) + update_config = try(each.value.update_config, var.eks_managed_node_group_defaults.update_config, local.default_update_config) + timeouts = try(each.value.timeouts, var.eks_managed_node_group_defaults.timeouts, {}) # User data platform = try(each.value.platform, var.eks_managed_node_group_defaults.platform, "linux") @@ -357,8 +357,6 @@ module "eks_managed_node_group" { launch_template_tags = try(each.value.launch_template_tags, var.eks_managed_node_group_defaults.launch_template_tags, {}) tag_specifications = try(each.value.tag_specifications, var.eks_managed_node_group_defaults.tag_specifications, ["instance", "volume", "network-interface"]) - node_repair_config_enabled = try(each.value.node_repair_config_enabled, var.eks_managed_node_group_defaults.node_repair_config_enabled, false) - ebs_optimized = try(each.value.ebs_optimized, var.eks_managed_node_group_defaults.ebs_optimized, null) key_name = try(each.value.key_name, var.eks_managed_node_group_defaults.key_name, null) disable_api_termination = try(each.value.disable_api_termination, var.eks_managed_node_group_defaults.disable_api_termination, null) diff --git a/tests/eks-fargate-profile/README.md b/tests/eks-fargate-profile/README.md index afe94054f9..7bb85d63f7 100644 --- a/tests/eks-fargate-profile/README.md +++ b/tests/eks-fargate-profile/README.md @@ -18,13 +18,13 @@ Note that this example may create resources which cost money. Run `terraform des | Name | Version | |------|---------| | [terraform](#requirement\_terraform) | >= 1.3.2 | -| [aws](#requirement\_aws) | >= 5.81 | +| [aws](#requirement\_aws) | >= 5.83 | ## Providers | Name | Version | |------|---------| -| [aws](#provider\_aws) | >= 5.81 | +| [aws](#provider\_aws) | >= 5.83 | ## Modules diff --git a/tests/eks-fargate-profile/versions.tf b/tests/eks-fargate-profile/versions.tf index e31fee1f34..4736a5b5f7 100644 --- a/tests/eks-fargate-profile/versions.tf +++ b/tests/eks-fargate-profile/versions.tf @@ -4,7 +4,7 @@ terraform { required_providers { aws = { source = "hashicorp/aws" - version = ">= 5.81" + version = ">= 5.83" } } } diff --git a/tests/eks-hybrid-nodes/README.md b/tests/eks-hybrid-nodes/README.md index 6bc9e7d1eb..8f2ac1206c 100644 --- a/tests/eks-hybrid-nodes/README.md +++ b/tests/eks-hybrid-nodes/README.md @@ -18,7 +18,7 @@ Note that this example may create resources which cost money. Run `terraform des | Name | Version | |------|---------| | [terraform](#requirement\_terraform) | >= 1.3.2 | -| [aws](#requirement\_aws) | >= 5.81 | +| [aws](#requirement\_aws) | >= 5.83 | | [tls](#requirement\_tls) | >= 4.0 | ## Providers diff --git a/tests/eks-hybrid-nodes/versions.tf b/tests/eks-hybrid-nodes/versions.tf index 19bf4edb5e..37eb431fb9 100644 --- a/tests/eks-hybrid-nodes/versions.tf +++ b/tests/eks-hybrid-nodes/versions.tf @@ -4,7 +4,7 @@ terraform { required_providers { aws = { source = "hashicorp/aws" - version = ">= 5.81" + version = ">= 5.83" } tls = { source = "hashicorp/tls" diff --git a/tests/eks-managed-node-group/README.md b/tests/eks-managed-node-group/README.md index 1434e52b62..91fc990a92 100644 --- a/tests/eks-managed-node-group/README.md +++ b/tests/eks-managed-node-group/README.md @@ -18,13 +18,13 @@ Note that this example may create resources which cost money. Run `terraform des | Name | Version | |------|---------| | [terraform](#requirement\_terraform) | >= 1.3.2 | -| [aws](#requirement\_aws) | >= 5.81 | +| [aws](#requirement\_aws) | >= 5.83 | ## Providers | Name | Version | |------|---------| -| [aws](#provider\_aws) | >= 5.81 | +| [aws](#provider\_aws) | >= 5.83 | ## Modules diff --git a/tests/eks-managed-node-group/main.tf b/tests/eks-managed-node-group/main.tf index 5d26a53fca..aa73cec30f 100644 --- a/tests/eks-managed-node-group/main.tf +++ b/tests/eks-managed-node-group/main.tf @@ -52,6 +52,9 @@ module "eks" { coredns = { most_recent = true } + eks-node-monitoring-agent = { + most_recent = true + } eks-pod-identity-agent = { before_compute = true most_recent = true @@ -289,6 +292,10 @@ module "eks" { instance_metadata_tags = "disabled" } + node_repair_config = { + enabled = true + } + create_iam_role = true iam_role_name = "eks-managed-node-group-complete-example" iam_role_use_name_prefix = false diff --git a/tests/eks-managed-node-group/versions.tf b/tests/eks-managed-node-group/versions.tf index e31fee1f34..4736a5b5f7 100644 --- a/tests/eks-managed-node-group/versions.tf +++ b/tests/eks-managed-node-group/versions.tf @@ -4,7 +4,7 @@ terraform { required_providers { aws = { source = "hashicorp/aws" - version = ">= 5.81" + version = ">= 5.83" } } } diff --git a/tests/fast-addons/README.md b/tests/fast-addons/README.md index ae78a4ee73..5c27596125 100644 --- a/tests/fast-addons/README.md +++ b/tests/fast-addons/README.md @@ -22,13 +22,13 @@ Note that this example may create resources which cost money. Run `terraform des | Name | Version | |------|---------| | [terraform](#requirement\_terraform) | >= 1.3.2 | -| [aws](#requirement\_aws) | >= 5.81 | +| [aws](#requirement\_aws) | >= 5.83 | ## Providers | Name | Version | |------|---------| -| [aws](#provider\_aws) | >= 5.81 | +| [aws](#provider\_aws) | >= 5.83 | ## Modules diff --git a/tests/fast-addons/versions.tf b/tests/fast-addons/versions.tf index e31fee1f34..4736a5b5f7 100644 --- a/tests/fast-addons/versions.tf +++ b/tests/fast-addons/versions.tf @@ -4,7 +4,7 @@ terraform { required_providers { aws = { source = "hashicorp/aws" - version = ">= 5.81" + version = ">= 5.83" } } } diff --git a/tests/self-managed-node-group/README.md b/tests/self-managed-node-group/README.md index 3c26d9e435..7a30923161 100644 --- a/tests/self-managed-node-group/README.md +++ b/tests/self-managed-node-group/README.md @@ -18,13 +18,13 @@ Note that this example may create resources which cost money. Run `terraform des | Name | Version | |------|---------| | [terraform](#requirement\_terraform) | >= 1.3.2 | -| [aws](#requirement\_aws) | >= 5.81 | +| [aws](#requirement\_aws) | >= 5.83 | ## Providers | Name | Version | |------|---------| -| [aws](#provider\_aws) | >= 5.81 | +| [aws](#provider\_aws) | >= 5.83 | ## Modules diff --git a/tests/self-managed-node-group/versions.tf b/tests/self-managed-node-group/versions.tf index e31fee1f34..4736a5b5f7 100644 --- a/tests/self-managed-node-group/versions.tf +++ b/tests/self-managed-node-group/versions.tf @@ -4,7 +4,7 @@ terraform { required_providers { aws = { source = "hashicorp/aws" - version = ">= 5.81" + version = ">= 5.83" } } }