1
0
mirror of https://github.com/terraform-aws-modules/terraform-aws-eks.git synced 2025-09-09 19:32:58 +08:00

fix: Correct addon timeout lookup/override logic to support global and addon specific settings (#3492)

This commit is contained in:
Bryant Biggs
2025-08-24 13:16:17 -05:00
committed by GitHub
parent b02727a652
commit b236208d5c
3 changed files with 10 additions and 10 deletions
+2 -2
View File
@@ -384,8 +384,8 @@ We are grateful to the community for contributing bugfixes and improvements! Ple
|------|-------------|------|---------|:--------:| |------|-------------|------|---------|:--------:|
| <a name="input_access_entries"></a> [access\_entries](#input\_access\_entries) | Map of access entries to add to the cluster | <pre>map(object({<br/> # Access entry<br/> kubernetes_groups = optional(list(string))<br/> principal_arn = string<br/> type = optional(string, "STANDARD")<br/> user_name = optional(string)<br/> tags = optional(map(string), {})<br/> # Access policy association<br/> policy_associations = optional(map(object({<br/> policy_arn = string<br/> access_scope = object({<br/> namespaces = optional(list(string))<br/> type = string<br/> })<br/> })), {})<br/> }))</pre> | `{}` | no | | <a name="input_access_entries"></a> [access\_entries](#input\_access\_entries) | Map of access entries to add to the cluster | <pre>map(object({<br/> # Access entry<br/> kubernetes_groups = optional(list(string))<br/> principal_arn = string<br/> type = optional(string, "STANDARD")<br/> user_name = optional(string)<br/> tags = optional(map(string), {})<br/> # Access policy association<br/> policy_associations = optional(map(object({<br/> policy_arn = string<br/> access_scope = object({<br/> namespaces = optional(list(string))<br/> type = string<br/> })<br/> })), {})<br/> }))</pre> | `{}` | no |
| <a name="input_additional_security_group_ids"></a> [additional\_security\_group\_ids](#input\_additional\_security\_group\_ids) | List of additional, externally created security group IDs to attach to the cluster control plane | `list(string)` | `[]` | no | | <a name="input_additional_security_group_ids"></a> [additional\_security\_group\_ids](#input\_additional\_security\_group\_ids) | List of additional, externally created security group IDs to attach to the cluster control plane | `list(string)` | `[]` | no |
| <a name="input_addons"></a> [addons](#input\_addons) | Map of cluster addon configurations to enable for the cluster. Addon name can be the map keys or set with `name` | <pre>map(object({<br/> name = optional(string) # will fall back to map key<br/> before_compute = optional(bool, false)<br/> most_recent = optional(bool, true)<br/> addon_version = optional(string)<br/> configuration_values = optional(string)<br/> pod_identity_association = optional(list(object({<br/> role_arn = string<br/> service_account = string<br/> })))<br/> preserve = optional(bool, true)<br/> resolve_conflicts_on_create = optional(string, "NONE")<br/> resolve_conflicts_on_update = optional(string, "OVERWRITE")<br/> service_account_role_arn = optional(string)<br/> timeouts = optional(object({<br/> create = optional(string)<br/> update = optional(string)<br/> delete = optional(string)<br/> }))<br/> tags = optional(map(string), {})<br/> }))</pre> | `null` | no | | <a name="input_addons"></a> [addons](#input\_addons) | Map of cluster addon configurations to enable for the cluster. Addon name can be the map keys or set with `name` | <pre>map(object({<br/> name = optional(string) # will fall back to map key<br/> before_compute = optional(bool, false)<br/> most_recent = optional(bool, true)<br/> addon_version = optional(string)<br/> configuration_values = optional(string)<br/> pod_identity_association = optional(list(object({<br/> role_arn = string<br/> service_account = string<br/> })))<br/> preserve = optional(bool, true)<br/> resolve_conflicts_on_create = optional(string, "NONE")<br/> resolve_conflicts_on_update = optional(string, "OVERWRITE")<br/> service_account_role_arn = optional(string)<br/> timeouts = optional(object({<br/> create = optional(string)<br/> update = optional(string)<br/> delete = optional(string)<br/> }), {})<br/> tags = optional(map(string), {})<br/> }))</pre> | `null` | no |
| <a name="input_addons_timeouts"></a> [addons\_timeouts](#input\_addons\_timeouts) | Create, update, and delete timeout configurations for the cluster addons | <pre>object({<br/> create = optional(string)<br/> update = optional(string)<br/> delete = optional(string)<br/> })</pre> | `null` | no | | <a name="input_addons_timeouts"></a> [addons\_timeouts](#input\_addons\_timeouts) | Create, update, and delete timeout configurations for the cluster addons | <pre>object({<br/> create = optional(string)<br/> update = optional(string)<br/> delete = optional(string)<br/> })</pre> | `{}` | no |
| <a name="input_attach_encryption_policy"></a> [attach\_encryption\_policy](#input\_attach\_encryption\_policy) | Indicates whether or not to attach an additional policy for the cluster IAM role to utilize the encryption key provided | `bool` | `true` | no | | <a name="input_attach_encryption_policy"></a> [attach\_encryption\_policy](#input\_attach\_encryption\_policy) | Indicates whether or not to attach an additional policy for the cluster IAM role to utilize the encryption key provided | `bool` | `true` | no |
| <a name="input_authentication_mode"></a> [authentication\_mode](#input\_authentication\_mode) | The authentication mode for the cluster. Valid values are `CONFIG_MAP`, `API` or `API_AND_CONFIG_MAP` | `string` | `"API_AND_CONFIG_MAP"` | no | | <a name="input_authentication_mode"></a> [authentication\_mode](#input\_authentication\_mode) | The authentication mode for the cluster. Valid values are `CONFIG_MAP`, `API` or `API_AND_CONFIG_MAP` | `string` | `"API_AND_CONFIG_MAP"` | no |
| <a name="input_cloudwatch_log_group_class"></a> [cloudwatch\_log\_group\_class](#input\_cloudwatch\_log\_group\_class) | Specified the log class of the log group. Possible values are: `STANDARD` or `INFREQUENT_ACCESS` | `string` | `null` | no | | <a name="input_cloudwatch_log_group_class"></a> [cloudwatch\_log\_group\_class](#input\_cloudwatch\_log\_group\_class) | Specified the log class of the log group. Possible values are: `STANDARD` or `INFREQUENT_ACCESS` | `string` | `null` | no |
+6 -6
View File
@@ -785,9 +785,9 @@ resource "aws_eks_addon" "this" {
service_account_role_arn = each.value.service_account_role_arn service_account_role_arn = each.value.service_account_role_arn
timeouts { timeouts {
create = try(coalesce(each.value.timeouts.create, var.addons_timeouts.create), null) create = each.value.timeouts.create != null ? each.value.timeouts.create : var.addons_timeouts.create
update = try(coalesce(each.value.timeouts.update, var.addons_timeouts.update), null) update = each.value.timeouts.update != null ? each.value.timeouts.update : var.addons_timeouts.update
delete = try(coalesce(each.value.timeouts.delete, var.addons_timeouts.delete), null) delete = each.value.timeouts.delete != null ? each.value.timeouts.delete : var.addons_timeouts.delete
} }
tags = merge( tags = merge(
@@ -830,9 +830,9 @@ resource "aws_eks_addon" "before_compute" {
service_account_role_arn = each.value.service_account_role_arn service_account_role_arn = each.value.service_account_role_arn
timeouts { timeouts {
create = try(coalesce(each.value.timeouts.create, var.addons_timeouts.create), null) create = each.value.timeouts.create != null ? each.value.timeouts.create : var.addons_timeouts.create
update = try(coalesce(each.value.timeouts.update, var.addons_timeouts.update), null) update = each.value.timeouts.update != null ? each.value.timeouts.update : var.addons_timeouts.update
delete = try(coalesce(each.value.timeouts.delete, var.addons_timeouts.delete), null) delete = each.value.timeouts.delete != null ? each.value.timeouts.delete : var.addons_timeouts.delete
} }
tags = merge( tags = merge(
+2 -2
View File
@@ -635,7 +635,7 @@ variable "addons" {
create = optional(string) create = optional(string)
update = optional(string) update = optional(string)
delete = optional(string) delete = optional(string)
})) }), {})
tags = optional(map(string), {}) tags = optional(map(string), {})
})) }))
default = null default = null
@@ -648,7 +648,7 @@ variable "addons_timeouts" {
update = optional(string) update = optional(string)
delete = optional(string) delete = optional(string)
}) })
default = null default = {}
} }
################################################################################ ################################################################################