From 408d8d0d942faa8ac824a99f171e28da2047aa5d Mon Sep 17 00:00:00 2001 From: Mick Morse Date: Fri, 8 Sep 2023 12:12:39 +0100 Subject: [PATCH 1/2] Added all instance refresh options, including scale in protection and standby instances --- examples/complete/main.tf | 14 +++++++++----- main.tf | 26 ++++++++++++++++---------- 2 files changed, 25 insertions(+), 15 deletions(-) diff --git a/examples/complete/main.tf b/examples/complete/main.tf index 918e7fd..c17344a 100644 --- a/examples/complete/main.tf +++ b/examples/complete/main.tf @@ -68,11 +68,15 @@ module "complete" { instance_refresh = { strategy = "Rolling" preferences = { - checkpoint_delay = 600 - checkpoint_percentages = [35, 70, 100] - instance_warmup = 300 - min_healthy_percentage = 50 - auto_rollback = true + checkpoint_delay = 600 + checkpoint_percentages = [35, 70, 100] + instance_warmup = 300 + min_healthy_percentage = 50 + auto_rollback = true + standby_instances = "Ignore" + scale_in_protected_instances = "Ignore" + skip_matching = false + } triggers = ["tag"] } diff --git a/main.tf b/main.tf index b6ec41a..b853eb7 100644 --- a/main.tf +++ b/main.tf @@ -411,11 +411,14 @@ resource "aws_autoscaling_group" "this" { dynamic "preferences" { for_each = try([instance_refresh.value.preferences], []) content { - checkpoint_delay = try(preferences.value.checkpoint_delay, null) - checkpoint_percentages = try(preferences.value.checkpoint_percentages, null) - instance_warmup = try(preferences.value.instance_warmup, null) - min_healthy_percentage = try(preferences.value.min_healthy_percentage, null) - auto_rollback = try(preferences.value.auto_rollback, null) + checkpoint_delay = try(preferences.value.checkpoint_delay, null) + checkpoint_percentages = try(preferences.value.checkpoint_percentages, null) + instance_warmup = try(preferences.value.instance_warmup, null) + min_healthy_percentage = try(preferences.value.min_healthy_percentage, null) + auto_rollback = try(preferences.value.auto_rollback, null) + scale_in_protected_instances = try(preferences.value.scale_in_protected_instances, null) + standby_instances = try(preferences.value.standby_instances, null) + skip_matching = try(preferences.value.skip_matching, null) } } } @@ -675,11 +678,14 @@ resource "aws_autoscaling_group" "idc" { dynamic "preferences" { for_each = try([instance_refresh.value.preferences], []) content { - checkpoint_delay = try(preferences.value.checkpoint_delay, null) - checkpoint_percentages = try(preferences.value.checkpoint_percentages, null) - instance_warmup = try(preferences.value.instance_warmup, null) - min_healthy_percentage = try(preferences.value.min_healthy_percentage, null) - auto_rollback = try(preferences.value.auto_rollback, null) + checkpoint_delay = try(preferences.value.checkpoint_delay, null) + checkpoint_percentages = try(preferences.value.checkpoint_percentages, null) + instance_warmup = try(preferences.value.instance_warmup, null) + min_healthy_percentage = try(preferences.value.min_healthy_percentage, null) + auto_rollback = try(preferences.value.auto_rollback, null) + scale_in_protected_instances = try(preferences.value.scale_in_protected_instances, null) + standby_instances = try(preferences.value.standby_instances, null) + skip_matching = try(preferences.value.skip_matching, null) } } } From 596c2c60ba11193ed5124150fcbfcac89d015c28 Mon Sep 17 00:00:00 2001 From: Mick Morse Date: Mon, 11 Sep 2023 11:05:08 +0100 Subject: [PATCH 2/2] updated doc to reflect defaults --- README.md | 12 ++++++++---- examples/complete/main.tf | 6 +++--- 2 files changed, 11 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index c959556..e81affd 100644 --- a/README.md +++ b/README.md @@ -48,10 +48,14 @@ module "asg" { instance_refresh = { strategy = "Rolling" preferences = { - checkpoint_delay = 600 - checkpoint_percentages = [35, 70, 100] - instance_warmup = 300 - min_healthy_percentage = 50 + checkpoint_delay = 600 + checkpoint_percentages = [35, 70, 100] + instance_warmup = 300 + min_healthy_percentage = 50 + auto_rollback = false + standby_instances = "Wait" + scale_in_protected_instances = "Wait" + skip_matching = false } triggers = ["tag"] } diff --git a/examples/complete/main.tf b/examples/complete/main.tf index c17344a..9ca4c50 100644 --- a/examples/complete/main.tf +++ b/examples/complete/main.tf @@ -72,9 +72,9 @@ module "complete" { checkpoint_percentages = [35, 70, 100] instance_warmup = 300 min_healthy_percentage = 50 - auto_rollback = true - standby_instances = "Ignore" - scale_in_protected_instances = "Ignore" + auto_rollback = false + standby_instances = "Wait" + scale_in_protected_instances = "Wait" skip_matching = false }