From 208f3207337bc55e01b5477d97ff3c05a65737d2 Mon Sep 17 00:00:00 2001 From: Vladimir Kurlenya Date: Fri, 21 May 2021 11:04:38 +0300 Subject: [PATCH] feat: Add ability to forcefully update nodes in managed node groups (#1380) --- modules/node_groups/README.md | 1 + modules/node_groups/node_groups.tf | 11 ++++++----- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/modules/node_groups/README.md b/modules/node_groups/README.md index b7443cb..a4d4502 100644 --- a/modules/node_groups/README.md +++ b/modules/node_groups/README.md @@ -21,6 +21,7 @@ The role ARN specified in `var.default_iam_role_arn` will be used by default. In | ami\_release\_version | AMI version of workers | string | Provider default behavior | | ami\_type | AMI Type. See Terraform or AWS docs | string | Provider default behavior | | capacity\_type | Type of instance capacity to provision. Options are `ON_DEMAND` and `SPOT` | string | Provider default behavior | +| force\_update\_version | Force version update if existing pods are unable to be drained due to a pod disruption budget issue. | bool | Provider default behavior | | desired\_capacity | Desired number of workers | number | `var.workers_group_defaults[asg_desired_capacity]` | | disk\_size | Workers' disk size | number | Provider default behavior | | disk\_type | Workers' disk type. Require `create_launch_template` to be `true`| number | `gp3` | diff --git a/modules/node_groups/node_groups.tf b/modules/node_groups/node_groups.tf index 8b9904c..afb6505 100644 --- a/modules/node_groups/node_groups.tf +++ b/modules/node_groups/node_groups.tf @@ -13,11 +13,12 @@ resource "aws_eks_node_group" "workers" { min_size = each.value["min_capacity"] } - ami_type = lookup(each.value, "ami_type", null) - disk_size = each.value["launch_template_id"] != null || each.value["create_launch_template"] ? null : lookup(each.value, "disk_size", null) - instance_types = !each.value["set_instance_types_on_lt"] ? each.value["instance_types"] : null - release_version = lookup(each.value, "ami_release_version", null) - capacity_type = lookup(each.value, "capacity_type", null) + ami_type = lookup(each.value, "ami_type", null) + disk_size = each.value["launch_template_id"] != null || each.value["create_launch_template"] ? null : lookup(each.value, "disk_size", null) + instance_types = !each.value["set_instance_types_on_lt"] ? each.value["instance_types"] : null + release_version = lookup(each.value, "ami_release_version", null) + capacity_type = lookup(each.value, "capacity_type", null) + force_update_version = lookup(each.value, "force_update_version", null) dynamic "remote_access" { for_each = each.value["key_name"] != "" && each.value["launch_template_id"] == null && !each.value["create_launch_template"] ? [{