diff --git a/README.md b/README.md index ec22fdd..84a960a 100644 --- a/README.md +++ b/README.md @@ -57,6 +57,35 @@ module "eks" { } ``` +### EKS Auto Mode - Custom Node Pools Only + +```hcl +module "eks" { + source = "terraform-aws-modules/eks/aws" + version = "~> 21.0" + + name = "example" + kubernetes_version = "1.33" + + # Optional + endpoint_public_access = true + + # Optional: Adds the current caller identity as an administrator via cluster access entry + enable_cluster_creator_admin_permissions = true + + # Create just the IAM resources for EKS Auto Mode for use with custom node pools + create_auto_mode_iam_resources = true + + vpc_id = "vpc-1234556abcdef" + subnet_ids = ["subnet-abcde012", "subnet-bcde012a", "subnet-fghi345a"] + + tags = { + Environment = "dev" + Terraform = "true" + } +} +``` + ### EKS Managed Node Group ```hcl @@ -318,7 +347,7 @@ We are grateful to the community for contributing bugfixes and improvements! Ple | Name | Version | |------|---------| | [terraform](#requirement\_terraform) | >= 1.5.7 | -| [aws](#requirement\_aws) | >= 6.9 | +| [aws](#requirement\_aws) | >= 6.13 | | [time](#requirement\_time) | >= 0.9 | | [tls](#requirement\_tls) | >= 4.0 | @@ -326,7 +355,7 @@ We are grateful to the community for contributing bugfixes and improvements! Ple | Name | Version | |------|---------| -| [aws](#provider\_aws) | >= 6.9 | +| [aws](#provider\_aws) | >= 6.13 | | [time](#provider\_time) | >= 0.9 | | [tls](#provider\_tls) | >= 4.0 | @@ -393,9 +422,10 @@ We are grateful to the community for contributing bugfixes and improvements! Ple | [cloudwatch\_log\_group\_retention\_in\_days](#input\_cloudwatch\_log\_group\_retention\_in\_days) | Number of days to retain log events. Default retention - 90 days | `number` | `90` | no | | [cloudwatch\_log\_group\_tags](#input\_cloudwatch\_log\_group\_tags) | A map of additional tags to add to the cloudwatch log group created | `map(string)` | `{}` | no | | [cluster\_tags](#input\_cluster\_tags) | A map of additional tags to add to the cluster | `map(string)` | `{}` | no | -| [compute\_config](#input\_compute\_config) | Configuration block for the cluster compute configuration |
object({
enabled = optional(bool, false)
node_pools = optional(list(string))
node_role_arn = optional(string)
}) | `null` | no |
+| [compute\_config](#input\_compute\_config) | Configuration block for the cluster compute configuration | object({
enabled = optional(bool, false)
node_pools = optional(list(string))
node_role_arn = optional(string)
}) | `{}` | no |
| [control\_plane\_subnet\_ids](#input\_control\_plane\_subnet\_ids) | A list of subnet IDs where the EKS cluster control plane (ENIs) will be provisioned. Used for expanding the pool of subnets used by nodes/node groups without replacing the EKS control plane | `list(string)` | `[]` | no |
| [create](#input\_create) | Controls if resources should be created (affects nearly all resources) | `bool` | `true` | no |
+| [create\_auto\_mode\_iam\_resources](#input\_create\_auto\_mode\_iam\_resources) | Determines whether to create/attach IAM resources for EKS Auto Mode. Useful for when using only custom node pools and not built-in EKS Auto Mode node pools | `bool` | `false` | no |
| [create\_cloudwatch\_log\_group](#input\_create\_cloudwatch\_log\_group) | Determines whether a log group is created by this module for the cluster logs. If not, AWS will automatically create one if logging is enabled | `bool` | `true` | no |
| [create\_cni\_ipv6\_iam\_policy](#input\_create\_cni\_ipv6\_iam\_policy) | Determines whether to create an [`AmazonEKS_CNI_IPv6_Policy`](https://docs.aws.amazon.com/eks/latest/userguide/cni-iam-role.html#cni-iam-role-create-ipv6-policy) | `bool` | `false` | no |
| [create\_iam\_role](#input\_create\_iam\_role) | Determines whether an IAM role is created for the cluster | `bool` | `true` | no |
diff --git a/examples/eks-auto-mode/README.md b/examples/eks-auto-mode/README.md
index 204fecd..3dbb1c6 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.5.7 |
-| [aws](#requirement\_aws) | >= 6.9 |
+| [aws](#requirement\_aws) | >= 6.13 |
## Providers
| Name | Version |
|------|---------|
-| [aws](#provider\_aws) | >= 6.9 |
+| [aws](#provider\_aws) | >= 6.13 |
## Modules
@@ -39,6 +39,7 @@ Note that this example may create resources which cost money. Run `terraform des
|------|--------|---------|
| [disabled\_eks](#module\_disabled\_eks) | ../.. | n/a |
| [eks](#module\_eks) | ../.. | n/a |
+| [eks\_auto\_custom\_node\_pools](#module\_eks\_auto\_custom\_node\_pools) | ../.. | n/a |
| [vpc](#module\_vpc) | terraform-aws-modules/vpc/aws | ~> 6.0 |
## Resources
diff --git a/examples/eks-auto-mode/main.tf b/examples/eks-auto-mode/main.tf
index e00b825..05eec9b 100644
--- a/examples/eks-auto-mode/main.tf
+++ b/examples/eks-auto-mode/main.tf
@@ -35,7 +35,6 @@ module "eks" {
name = local.name
kubernetes_version = local.kubernetes_version
endpoint_public_access = true
- deletion_protection = true
enable_cluster_creator_admin_permissions = true
@@ -50,6 +49,24 @@ module "eks" {
tags = local.tags
}
+module "eks_auto_custom_node_pools" {
+ source = "../.."
+
+ name = "${local.name}-custom"
+ kubernetes_version = local.kubernetes_version
+ endpoint_public_access = true
+
+ enable_cluster_creator_admin_permissions = true
+
+ # Create just the IAM resources for EKS Auto Mode for use with custom node pools
+ create_auto_mode_iam_resources = true
+
+ vpc_id = module.vpc.vpc_id
+ subnet_ids = module.vpc.private_subnets
+
+ tags = local.tags
+}
+
module "disabled_eks" {
source = "../.."
diff --git a/examples/eks-auto-mode/versions.tf b/examples/eks-auto-mode/versions.tf
index fe4021c..8f71cb6 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 = ">= 6.9"
+ version = ">= 6.13"
}
}
}
diff --git a/examples/eks-hybrid-nodes/README.md b/examples/eks-hybrid-nodes/README.md
index d2b9e1c..f5da694 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.5.7 |
-| [aws](#requirement\_aws) | >= 6.9 |
+| [aws](#requirement\_aws) | >= 6.13 |
| [helm](#requirement\_helm) | >= 3.0 |
| [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) | >= 6.9 |
-| [aws.remote](#provider\_aws.remote) | >= 6.9 |
+| [aws](#provider\_aws) | >= 6.13 |
+| [aws.remote](#provider\_aws.remote) | >= 6.13 |
| [helm](#provider\_helm) | >= 3.0 |
| [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 8762781..988eb51 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 = ">= 6.9"
+ version = ">= 6.13"
}
helm = {
source = "hashicorp/helm"
diff --git a/examples/eks-managed-node-group/versions.tf b/examples/eks-managed-node-group/versions.tf
index fe4021c..8f71cb6 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 = ">= 6.9"
+ version = ">= 6.13"
}
}
}
diff --git a/examples/karpenter/README.md b/examples/karpenter/README.md
index 8e7e11e..8465cfb 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.5.7 |
-| [aws](#requirement\_aws) | >= 6.9 |
+| [aws](#requirement\_aws) | >= 6.13 |
| [helm](#requirement\_helm) | >= 3.0 |
## Providers
| Name | Version |
|------|---------|
-| [aws](#provider\_aws) | >= 6.9 |
-| [aws.virginia](#provider\_aws.virginia) | >= 6.9 |
+| [aws](#provider\_aws) | >= 6.13 |
+| [aws.virginia](#provider\_aws.virginia) | >= 6.13 |
| [helm](#provider\_helm) | >= 3.0 |
## Modules
diff --git a/examples/karpenter/versions.tf b/examples/karpenter/versions.tf
index 6cd7d57..e8922f3 100644
--- a/examples/karpenter/versions.tf
+++ b/examples/karpenter/versions.tf
@@ -4,7 +4,7 @@ terraform {
required_providers {
aws = {
source = "hashicorp/aws"
- version = ">= 6.9"
+ version = ">= 6.13"
}
helm = {
source = "hashicorp/helm"
diff --git a/examples/self-managed-node-group/versions.tf b/examples/self-managed-node-group/versions.tf
index fe4021c..8f71cb6 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 = ">= 6.9"
+ version = ">= 6.13"
}
}
}
diff --git a/main.tf b/main.tf
index 8ea8629..263380b 100644
--- a/main.tf
+++ b/main.tf
@@ -26,7 +26,7 @@ locals {
create_outposts_local_cluster = var.outpost_config != null
enable_encryption_config = var.encryption_config != null && !local.create_outposts_local_cluster
- auto_mode_enabled = try(var.compute_config.enabled, false)
+ create_auto_mode_iam_resources = var.compute_config.enabled || var.create_auto_mode_iam_resources
}
################################################################################
@@ -58,7 +58,7 @@ resource "aws_eks_cluster" "this" {
}
dynamic "compute_config" {
- for_each = var.compute_config != null ? [var.compute_config] : []
+ for_each = [var.compute_config]
content {
enabled = compute_config.value.enabled
@@ -81,10 +81,10 @@ resource "aws_eks_cluster" "this" {
content {
dynamic "elastic_load_balancing" {
- for_each = local.auto_mode_enabled ? [1] : []
+ for_each = [var.compute_config]
content {
- enabled = local.auto_mode_enabled
+ enabled = elastic_load_balancing.value.enabled
}
}
@@ -148,11 +148,11 @@ resource "aws_eks_cluster" "this" {
}
dynamic "storage_config" {
- for_each = local.auto_mode_enabled ? [1] : []
+ for_each = [var.compute_config]
content {
block_storage {
- enabled = local.auto_mode_enabled
+ enabled = storage_config.value.enabled
}
}
}
@@ -476,7 +476,7 @@ locals {
# Standard EKS cluster
eks_standard_iam_role_policies = { for k, v in {
AmazonEKSClusterPolicy = "${local.iam_role_policy_prefix}/AmazonEKSClusterPolicy",
- } : k => v if !local.create_outposts_local_cluster && !local.auto_mode_enabled }
+ } : k => v if !local.create_outposts_local_cluster && !local.create_auto_mode_iam_resources }
# EKS cluster with EKS auto mode enabled
eks_auto_mode_iam_role_policies = { for k, v in {
@@ -485,12 +485,12 @@ locals {
AmazonEKSBlockStoragePolicy = "${local.iam_role_policy_prefix}/AmazonEKSBlockStoragePolicy"
AmazonEKSLoadBalancingPolicy = "${local.iam_role_policy_prefix}/AmazonEKSLoadBalancingPolicy"
AmazonEKSNetworkingPolicy = "${local.iam_role_policy_prefix}/AmazonEKSNetworkingPolicy"
- } : k => v if !local.create_outposts_local_cluster && local.auto_mode_enabled }
+ } : k => v if !local.create_outposts_local_cluster && local.create_auto_mode_iam_resources }
# EKS local cluster on Outposts
eks_outpost_iam_role_policies = { for k, v in {
AmazonEKSClusterPolicy = "${local.iam_role_policy_prefix}/AmazonEKSLocalOutpostClusterPolicy"
- } : k => v if local.create_outposts_local_cluster && !local.auto_mode_enabled }
+ } : k => v if local.create_outposts_local_cluster && !local.create_auto_mode_iam_resources }
}
data "aws_iam_policy_document" "assume_role_policy" {
@@ -591,7 +591,7 @@ resource "aws_iam_policy" "cluster_encryption" {
}
data "aws_iam_policy_document" "custom" {
- count = local.create_iam_role && local.auto_mode_enabled && var.enable_auto_mode_custom_tags ? 1 : 0
+ count = local.create_iam_role && local.create_auto_mode_iam_resources && var.enable_auto_mode_custom_tags ? 1 : 0
dynamic "statement" {
for_each = var.enable_auto_mode_custom_tags ? [1] : []
@@ -725,7 +725,7 @@ data "aws_iam_policy_document" "custom" {
}
resource "aws_iam_policy" "custom" {
- count = local.create_iam_role && local.auto_mode_enabled && var.enable_auto_mode_custom_tags ? 1 : 0
+ count = local.create_iam_role && local.create_auto_mode_iam_resources && var.enable_auto_mode_custom_tags ? 1 : 0
name = var.iam_role_use_name_prefix ? null : local.iam_role_name
name_prefix = var.iam_role_use_name_prefix ? "${local.iam_role_name}-" : null
@@ -738,7 +738,7 @@ resource "aws_iam_policy" "custom" {
}
resource "aws_iam_role_policy_attachment" "custom" {
- count = local.create_iam_role && local.auto_mode_enabled && var.enable_auto_mode_custom_tags ? 1 : 0
+ count = local.create_iam_role && local.create_auto_mode_iam_resources && var.enable_auto_mode_custom_tags ? 1 : 0
policy_arn = aws_iam_policy.custom[0].arn
role = aws_iam_role.this[0].name
@@ -875,7 +875,7 @@ resource "aws_eks_identity_provider_config" "this" {
################################################################################
locals {
- create_node_iam_role = local.create && var.create_node_iam_role && local.auto_mode_enabled
+ create_node_iam_role = local.create && var.create_node_iam_role && local.create_auto_mode_iam_resources
node_iam_role_name = coalesce(var.node_iam_role_name, "${var.name}-eks-auto")
}
diff --git a/modules/eks-managed-node-group/README.md b/modules/eks-managed-node-group/README.md
index 6c92388..f2744c4 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.5.7 |
-| [aws](#requirement\_aws) | >= 6.9 |
+| [aws](#requirement\_aws) | >= 6.13 |
## Providers
| Name | Version |
|------|---------|
-| [aws](#provider\_aws) | >= 6.9 |
+| [aws](#provider\_aws) | >= 6.13 |
## Modules
diff --git a/modules/eks-managed-node-group/versions.tf b/modules/eks-managed-node-group/versions.tf
index fe4021c..8f71cb6 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 = ">= 6.9"
+ version = ">= 6.13"
}
}
}
diff --git a/modules/fargate-profile/README.md b/modules/fargate-profile/README.md
index 8981d2a..4685c58 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.5.7 |
-| [aws](#requirement\_aws) | >= 6.9 |
+| [aws](#requirement\_aws) | >= 6.13 |
## Providers
| Name | Version |
|------|---------|
-| [aws](#provider\_aws) | >= 6.9 |
+| [aws](#provider\_aws) | >= 6.13 |
## Modules
diff --git a/modules/fargate-profile/versions.tf b/modules/fargate-profile/versions.tf
index fe4021c..8f71cb6 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 = ">= 6.9"
+ version = ">= 6.13"
}
}
}
diff --git a/modules/hybrid-node-role/README.md b/modules/hybrid-node-role/README.md
index 9e7e0f4..ce84bbd 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.5.7 |
-| [aws](#requirement\_aws) | >= 6.9 |
+| [aws](#requirement\_aws) | >= 6.13 |
## Providers
| Name | Version |
|------|---------|
-| [aws](#provider\_aws) | >= 6.9 |
+| [aws](#provider\_aws) | >= 6.13 |
## Modules
diff --git a/modules/hybrid-node-role/versions.tf b/modules/hybrid-node-role/versions.tf
index fe4021c..8f71cb6 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 = ">= 6.9"
+ version = ">= 6.13"
}
}
}
diff --git a/modules/karpenter/README.md b/modules/karpenter/README.md
index 36f3412..fea43a9 100644
--- a/modules/karpenter/README.md
+++ b/modules/karpenter/README.md
@@ -86,13 +86,13 @@ module "karpenter" {
| Name | Version |
|------|---------|
| [terraform](#requirement\_terraform) | >= 1.5.7 |
-| [aws](#requirement\_aws) | >= 6.9 |
+| [aws](#requirement\_aws) | >= 6.13 |
## Providers
| Name | Version |
|------|---------|
-| [aws](#provider\_aws) | >= 6.9 |
+| [aws](#provider\_aws) | >= 6.13 |
## Modules
diff --git a/modules/karpenter/versions.tf b/modules/karpenter/versions.tf
index fe4021c..8f71cb6 100644
--- a/modules/karpenter/versions.tf
+++ b/modules/karpenter/versions.tf
@@ -4,7 +4,7 @@ terraform {
required_providers {
aws = {
source = "hashicorp/aws"
- version = ">= 6.9"
+ version = ">= 6.13"
}
}
}
diff --git a/modules/self-managed-node-group/README.md b/modules/self-managed-node-group/README.md
index c14f190..04ad2e6 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.5.7 |
-| [aws](#requirement\_aws) | >= 6.9 |
+| [aws](#requirement\_aws) | >= 6.13 |
## Providers
| Name | Version |
|------|---------|
-| [aws](#provider\_aws) | >= 6.9 |
+| [aws](#provider\_aws) | >= 6.13 |
## Modules
diff --git a/modules/self-managed-node-group/versions.tf b/modules/self-managed-node-group/versions.tf
index fe4021c..8f71cb6 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 = ">= 6.9"
+ version = ">= 6.13"
}
}
}
diff --git a/tests/eks-fargate-profile/README.md b/tests/eks-fargate-profile/README.md
index 5ff2f7f..28d2f06 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.5.7 |
-| [aws](#requirement\_aws) | >= 6.9 |
+| [aws](#requirement\_aws) | >= 6.13 |
## Providers
| Name | Version |
|------|---------|
-| [aws](#provider\_aws) | >= 6.9 |
+| [aws](#provider\_aws) | >= 6.13 |
## Modules
diff --git a/tests/eks-fargate-profile/versions.tf b/tests/eks-fargate-profile/versions.tf
index fe4021c..8f71cb6 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 = ">= 6.9"
+ version = ">= 6.13"
}
}
}
diff --git a/tests/eks-hybrid-nodes/README.md b/tests/eks-hybrid-nodes/README.md
index 27875d9..71ae477 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.5.7 |
-| [aws](#requirement\_aws) | >= 6.9 |
+| [aws](#requirement\_aws) | >= 6.13 |
| [tls](#requirement\_tls) | >= 4.0 |
## Providers
diff --git a/tests/eks-hybrid-nodes/versions.tf b/tests/eks-hybrid-nodes/versions.tf
index d56b124..6be6e0b 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 = ">= 6.9"
+ version = ">= 6.13"
}
tls = {
source = "hashicorp/tls"
diff --git a/tests/eks-managed-node-group/README.md b/tests/eks-managed-node-group/README.md
index 4b69f39..d53f0a6 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.5.7 |
-| [aws](#requirement\_aws) | >= 6.9 |
+| [aws](#requirement\_aws) | >= 6.13 |
## Providers
| Name | Version |
|------|---------|
-| [aws](#provider\_aws) | >= 6.9 |
+| [aws](#provider\_aws) | >= 6.13 |
## Modules
diff --git a/tests/eks-managed-node-group/versions.tf b/tests/eks-managed-node-group/versions.tf
index fe4021c..8f71cb6 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 = ">= 6.9"
+ version = ">= 6.13"
}
}
}
diff --git a/tests/self-managed-node-group/README.md b/tests/self-managed-node-group/README.md
index eba5c2f..d45c7ee 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.5.7 |
-| [aws](#requirement\_aws) | >= 6.9 |
+| [aws](#requirement\_aws) | >= 6.13 |
## Providers
| Name | Version |
|------|---------|
-| [aws](#provider\_aws) | >= 6.9 |
+| [aws](#provider\_aws) | >= 6.13 |
## Modules
diff --git a/tests/self-managed-node-group/versions.tf b/tests/self-managed-node-group/versions.tf
index fe4021c..8f71cb6 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 = ">= 6.9"
+ version = ">= 6.13"
}
}
}
diff --git a/variables.tf b/variables.tf
index 9647017..0b155d0 100644
--- a/variables.tf
+++ b/variables.tf
@@ -69,7 +69,8 @@ variable "compute_config" {
node_pools = optional(list(string))
node_role_arn = optional(string)
})
- default = null
+ default = {}
+ nullable = false
}
variable "upgrade_policy" {
@@ -611,6 +612,12 @@ variable "enable_auto_mode_custom_tags" {
default = true
}
+variable "create_auto_mode_iam_resources" {
+ description = "Determines whether to create/attach IAM resources for EKS Auto Mode. Useful for when using only custom node pools and not built-in EKS Auto Mode node pools"
+ type = bool
+ default = false
+}
+
################################################################################
# EKS Addons
################################################################################
diff --git a/versions.tf b/versions.tf
index 6c80903..d6ab6ed 100644
--- a/versions.tf
+++ b/versions.tf
@@ -4,7 +4,7 @@ terraform {
required_providers {
aws = {
source = "hashicorp/aws"
- version = ">= 6.9"
+ version = ">= 6.13"
}
tls = {
source = "hashicorp/tls"