Skip to content

Commit 812dcdc

Browse files
committed
Improve upgrade_settings structures
1 parent d673390 commit 812dcdc

File tree

8 files changed

+165
-270
lines changed

8 files changed

+165
-270
lines changed

autogen/main/cluster.tf.tmpl

Lines changed: 11 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -684,27 +684,20 @@ resource "google_container_node_pool" "windows_pools" {
684684
auto_upgrade = lookup(each.value, "auto_upgrade", local.default_auto_upgrade)
685685
}
686686

687-
dynamic "upgrade_settings" {
688-
for_each = lookup(each.value, "strategy", "SURGE") == "SURGE" ? [each.value] : []
689-
content {
690-
strategy = lookup(upgrade_settings.value, "strategy", "SURGE")
691-
max_surge = lookup(upgrade_settings.value, "max_surge", 1)
692-
max_unavailable = lookup(upgrade_settings.value, "max_unavailable", 0)
693-
}
694-
}
687+
upgrade_settings {
688+
strategy = lookup(each.value, "strategy", "SURGE")
689+
max_surge = lookup(each.value, "strategy", "SURGE") == "SURGE" ? lookup(each.value, "max_surge", 1) : null
690+
max_unavailable = lookup(each.value, "strategy", "SURGE") == "SURGE" ? lookup(each.value, "max_unavailable", 0) : null
695691

696-
dynamic "upgrade_settings" {
697-
for_each = lookup(each.value, "strategy", "SURGE") == "BLUE_GREEN" ? [each.value] : []
698-
content {
699-
strategy = lookup(upgrade_settings.value, "strategy")
700-
701-
blue_green_settings {
702-
node_pool_soak_duration = lookup(upgrade_settings.value, "node_pool_soak_duration", "3600s")
692+
dynamic "blue_green_settings" {
693+
for_each = lookup(each.value, "strategy", "SURGE") == "BLUE_GREEN" ? [1] : []
694+
content {
695+
node_pool_soak_duration = lookup(each.value, "node_pool_soak_duration", "3600s")
703696

704697
standard_rollout_policy {
705-
batch_soak_duration = lookup(upgrade_settings.value, "batch_soak_duration", "60s")
706-
batch_percentage = lookup(upgrade_settings.value, "batch_percentage", null)
707-
batch_node_count = lookup(upgrade_settings.value, "batch_node_count", null)
698+
batch_soak_duration = lookup(each.value, "batch_soak_duration", "60s")
699+
batch_percentage = lookup(each.value, "batch_percentage", null)
700+
batch_node_count = lookup(each.value, "batch_node_count", null)
708701
}
709702
}
710703
}

cluster.tf

Lines changed: 22 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -405,27 +405,20 @@ resource "google_container_node_pool" "pools" {
405405
auto_upgrade = lookup(each.value, "auto_upgrade", local.default_auto_upgrade)
406406
}
407407

408-
dynamic "upgrade_settings" {
409-
for_each = lookup(each.value, "strategy", "SURGE") == "SURGE" ? [each.value] : []
410-
content {
411-
strategy = lookup(upgrade_settings.value, "strategy", "SURGE")
412-
max_surge = lookup(upgrade_settings.value, "max_surge", 1)
413-
max_unavailable = lookup(upgrade_settings.value, "max_unavailable", 0)
414-
}
415-
}
408+
upgrade_settings {
409+
strategy = lookup(each.value, "strategy", "SURGE")
410+
max_surge = lookup(each.value, "strategy", "SURGE") == "SURGE" ? lookup(each.value, "max_surge", 1) : null
411+
max_unavailable = lookup(each.value, "strategy", "SURGE") == "SURGE" ? lookup(each.value, "max_unavailable", 0) : null
416412

417-
dynamic "upgrade_settings" {
418-
for_each = lookup(each.value, "strategy", "SURGE") == "BLUE_GREEN" ? [each.value] : []
419-
content {
420-
strategy = lookup(upgrade_settings.value, "strategy")
421-
422-
blue_green_settings {
423-
node_pool_soak_duration = lookup(upgrade_settings.value, "node_pool_soak_duration", "3600s")
413+
dynamic "blue_green_settings" {
414+
for_each = lookup(each.value, "strategy", "SURGE") == "BLUE_GREEN" ? [1] : []
415+
content {
416+
node_pool_soak_duration = lookup(each.value, "node_pool_soak_duration", "3600s")
424417

425418
standard_rollout_policy {
426-
batch_soak_duration = lookup(upgrade_settings.value, "batch_soak_duration", "60s")
427-
batch_percentage = lookup(upgrade_settings.value, "batch_percentage", null)
428-
batch_node_count = lookup(upgrade_settings.value, "batch_node_count", null)
419+
batch_soak_duration = lookup(each.value, "batch_soak_duration", "60s")
420+
batch_percentage = lookup(each.value, "batch_percentage", null)
421+
batch_node_count = lookup(each.value, "batch_node_count", null)
429422
}
430423
}
431424
}
@@ -598,27 +591,20 @@ resource "google_container_node_pool" "windows_pools" {
598591
auto_upgrade = lookup(each.value, "auto_upgrade", local.default_auto_upgrade)
599592
}
600593

601-
dynamic "upgrade_settings" {
602-
for_each = lookup(each.value, "strategy", "SURGE") == "SURGE" ? [each.value] : []
603-
content {
604-
strategy = lookup(upgrade_settings.value, "strategy", "SURGE")
605-
max_surge = lookup(upgrade_settings.value, "max_surge", 1)
606-
max_unavailable = lookup(upgrade_settings.value, "max_unavailable", 0)
607-
}
608-
}
594+
upgrade_settings {
595+
strategy = lookup(each.value, "strategy", "SURGE")
596+
max_surge = lookup(each.value, "strategy", "SURGE") == "SURGE" ? lookup(each.value, "max_surge", 1) : null
597+
max_unavailable = lookup(each.value, "strategy", "SURGE") == "SURGE" ? lookup(each.value, "max_unavailable", 0) : null
609598

610-
dynamic "upgrade_settings" {
611-
for_each = lookup(each.value, "strategy", "SURGE") == "BLUE_GREEN" ? [each.value] : []
612-
content {
613-
strategy = lookup(upgrade_settings.value, "strategy")
614-
615-
blue_green_settings {
616-
node_pool_soak_duration = lookup(upgrade_settings.value, "node_pool_soak_duration", "3600s")
599+
dynamic "blue_green_settings" {
600+
for_each = lookup(each.value, "strategy", "SURGE") == "BLUE_GREEN" ? [1] : []
601+
content {
602+
node_pool_soak_duration = lookup(each.value, "node_pool_soak_duration", "3600s")
617603

618604
standard_rollout_policy {
619-
batch_soak_duration = lookup(upgrade_settings.value, "batch_soak_duration", "60s")
620-
batch_percentage = lookup(upgrade_settings.value, "batch_percentage", null)
621-
batch_node_count = lookup(upgrade_settings.value, "batch_node_count", null)
605+
batch_soak_duration = lookup(each.value, "batch_soak_duration", "60s")
606+
batch_percentage = lookup(each.value, "batch_percentage", null)
607+
batch_node_count = lookup(each.value, "batch_node_count", null)
622608
}
623609
}
624610
}

modules/beta-private-cluster-update-variant/cluster.tf

Lines changed: 22 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -594,27 +594,20 @@ resource "google_container_node_pool" "pools" {
594594
auto_upgrade = lookup(each.value, "auto_upgrade", local.default_auto_upgrade)
595595
}
596596

597-
dynamic "upgrade_settings" {
598-
for_each = lookup(each.value, "strategy", "SURGE") == "SURGE" ? [each.value] : []
599-
content {
600-
strategy = lookup(upgrade_settings.value, "strategy", "SURGE")
601-
max_surge = lookup(upgrade_settings.value, "max_surge", 1)
602-
max_unavailable = lookup(upgrade_settings.value, "max_unavailable", 0)
603-
}
604-
}
597+
upgrade_settings {
598+
strategy = lookup(each.value, "strategy", "SURGE")
599+
max_surge = lookup(each.value, "strategy", "SURGE") == "SURGE" ? lookup(each.value, "max_surge", 1) : null
600+
max_unavailable = lookup(each.value, "strategy", "SURGE") == "SURGE" ? lookup(each.value, "max_unavailable", 0) : null
605601

606-
dynamic "upgrade_settings" {
607-
for_each = lookup(each.value, "strategy", "SURGE") == "BLUE_GREEN" ? [each.value] : []
608-
content {
609-
strategy = lookup(upgrade_settings.value, "strategy")
610-
611-
blue_green_settings {
612-
node_pool_soak_duration = lookup(upgrade_settings.value, "node_pool_soak_duration", "3600s")
602+
dynamic "blue_green_settings" {
603+
for_each = lookup(each.value, "strategy", "SURGE") == "BLUE_GREEN" ? [1] : []
604+
content {
605+
node_pool_soak_duration = lookup(each.value, "node_pool_soak_duration", "3600s")
613606

614607
standard_rollout_policy {
615-
batch_soak_duration = lookup(upgrade_settings.value, "batch_soak_duration", "60s")
616-
batch_percentage = lookup(upgrade_settings.value, "batch_percentage", null)
617-
batch_node_count = lookup(upgrade_settings.value, "batch_node_count", null)
608+
batch_soak_duration = lookup(each.value, "batch_soak_duration", "60s")
609+
batch_percentage = lookup(each.value, "batch_percentage", null)
610+
batch_node_count = lookup(each.value, "batch_node_count", null)
618611
}
619612
}
620613
}
@@ -827,27 +820,20 @@ resource "google_container_node_pool" "windows_pools" {
827820
auto_upgrade = lookup(each.value, "auto_upgrade", local.default_auto_upgrade)
828821
}
829822

830-
dynamic "upgrade_settings" {
831-
for_each = lookup(each.value, "strategy", "SURGE") == "SURGE" ? [each.value] : []
832-
content {
833-
strategy = lookup(upgrade_settings.value, "strategy", "SURGE")
834-
max_surge = lookup(upgrade_settings.value, "max_surge", 1)
835-
max_unavailable = lookup(upgrade_settings.value, "max_unavailable", 0)
836-
}
837-
}
823+
upgrade_settings {
824+
strategy = lookup(each.value, "strategy", "SURGE")
825+
max_surge = lookup(each.value, "strategy", "SURGE") == "SURGE" ? lookup(each.value, "max_surge", 1) : null
826+
max_unavailable = lookup(each.value, "strategy", "SURGE") == "SURGE" ? lookup(each.value, "max_unavailable", 0) : null
838827

839-
dynamic "upgrade_settings" {
840-
for_each = lookup(each.value, "strategy", "SURGE") == "BLUE_GREEN" ? [each.value] : []
841-
content {
842-
strategy = lookup(upgrade_settings.value, "strategy")
843-
844-
blue_green_settings {
845-
node_pool_soak_duration = lookup(upgrade_settings.value, "node_pool_soak_duration", "3600s")
828+
dynamic "blue_green_settings" {
829+
for_each = lookup(each.value, "strategy", "SURGE") == "BLUE_GREEN" ? [1] : []
830+
content {
831+
node_pool_soak_duration = lookup(each.value, "node_pool_soak_duration", "3600s")
846832

847833
standard_rollout_policy {
848-
batch_soak_duration = lookup(upgrade_settings.value, "batch_soak_duration", "60s")
849-
batch_percentage = lookup(upgrade_settings.value, "batch_percentage", null)
850-
batch_node_count = lookup(upgrade_settings.value, "batch_node_count", null)
834+
batch_soak_duration = lookup(each.value, "batch_soak_duration", "60s")
835+
batch_percentage = lookup(each.value, "batch_percentage", null)
836+
batch_node_count = lookup(each.value, "batch_node_count", null)
851837
}
852838
}
853839
}

modules/beta-private-cluster/cluster.tf

Lines changed: 22 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -500,27 +500,20 @@ resource "google_container_node_pool" "pools" {
500500
auto_upgrade = lookup(each.value, "auto_upgrade", local.default_auto_upgrade)
501501
}
502502

503-
dynamic "upgrade_settings" {
504-
for_each = lookup(each.value, "strategy", "SURGE") == "SURGE" ? [each.value] : []
505-
content {
506-
strategy = lookup(upgrade_settings.value, "strategy", "SURGE")
507-
max_surge = lookup(upgrade_settings.value, "max_surge", 1)
508-
max_unavailable = lookup(upgrade_settings.value, "max_unavailable", 0)
509-
}
510-
}
503+
upgrade_settings {
504+
strategy = lookup(each.value, "strategy", "SURGE")
505+
max_surge = lookup(each.value, "strategy", "SURGE") == "SURGE" ? lookup(each.value, "max_surge", 1) : null
506+
max_unavailable = lookup(each.value, "strategy", "SURGE") == "SURGE" ? lookup(each.value, "max_unavailable", 0) : null
511507

512-
dynamic "upgrade_settings" {
513-
for_each = lookup(each.value, "strategy", "SURGE") == "BLUE_GREEN" ? [each.value] : []
514-
content {
515-
strategy = lookup(upgrade_settings.value, "strategy")
516-
517-
blue_green_settings {
518-
node_pool_soak_duration = lookup(upgrade_settings.value, "node_pool_soak_duration", "3600s")
508+
dynamic "blue_green_settings" {
509+
for_each = lookup(each.value, "strategy", "SURGE") == "BLUE_GREEN" ? [1] : []
510+
content {
511+
node_pool_soak_duration = lookup(each.value, "node_pool_soak_duration", "3600s")
519512

520513
standard_rollout_policy {
521-
batch_soak_duration = lookup(upgrade_settings.value, "batch_soak_duration", "60s")
522-
batch_percentage = lookup(upgrade_settings.value, "batch_percentage", null)
523-
batch_node_count = lookup(upgrade_settings.value, "batch_node_count", null)
514+
batch_soak_duration = lookup(each.value, "batch_soak_duration", "60s")
515+
batch_percentage = lookup(each.value, "batch_percentage", null)
516+
batch_node_count = lookup(each.value, "batch_node_count", null)
524517
}
525518
}
526519
}
@@ -732,27 +725,20 @@ resource "google_container_node_pool" "windows_pools" {
732725
auto_upgrade = lookup(each.value, "auto_upgrade", local.default_auto_upgrade)
733726
}
734727

735-
dynamic "upgrade_settings" {
736-
for_each = lookup(each.value, "strategy", "SURGE") == "SURGE" ? [each.value] : []
737-
content {
738-
strategy = lookup(upgrade_settings.value, "strategy", "SURGE")
739-
max_surge = lookup(upgrade_settings.value, "max_surge", 1)
740-
max_unavailable = lookup(upgrade_settings.value, "max_unavailable", 0)
741-
}
742-
}
728+
upgrade_settings {
729+
strategy = lookup(each.value, "strategy", "SURGE")
730+
max_surge = lookup(each.value, "strategy", "SURGE") == "SURGE" ? lookup(each.value, "max_surge", 1) : null
731+
max_unavailable = lookup(each.value, "strategy", "SURGE") == "SURGE" ? lookup(each.value, "max_unavailable", 0) : null
743732

744-
dynamic "upgrade_settings" {
745-
for_each = lookup(each.value, "strategy", "SURGE") == "BLUE_GREEN" ? [each.value] : []
746-
content {
747-
strategy = lookup(upgrade_settings.value, "strategy")
748-
749-
blue_green_settings {
750-
node_pool_soak_duration = lookup(upgrade_settings.value, "node_pool_soak_duration", "3600s")
733+
dynamic "blue_green_settings" {
734+
for_each = lookup(each.value, "strategy", "SURGE") == "BLUE_GREEN" ? [1] : []
735+
content {
736+
node_pool_soak_duration = lookup(each.value, "node_pool_soak_duration", "3600s")
751737

752738
standard_rollout_policy {
753-
batch_soak_duration = lookup(upgrade_settings.value, "batch_soak_duration", "60s")
754-
batch_percentage = lookup(upgrade_settings.value, "batch_percentage", null)
755-
batch_node_count = lookup(upgrade_settings.value, "batch_node_count", null)
739+
batch_soak_duration = lookup(each.value, "batch_soak_duration", "60s")
740+
batch_percentage = lookup(each.value, "batch_percentage", null)
741+
batch_node_count = lookup(each.value, "batch_node_count", null)
756742
}
757743
}
758744
}

modules/beta-public-cluster-update-variant/cluster.tf

Lines changed: 22 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -574,27 +574,20 @@ resource "google_container_node_pool" "pools" {
574574
auto_upgrade = lookup(each.value, "auto_upgrade", local.default_auto_upgrade)
575575
}
576576

577-
dynamic "upgrade_settings" {
578-
for_each = lookup(each.value, "strategy", "SURGE") == "SURGE" ? [each.value] : []
579-
content {
580-
strategy = lookup(upgrade_settings.value, "strategy", "SURGE")
581-
max_surge = lookup(upgrade_settings.value, "max_surge", 1)
582-
max_unavailable = lookup(upgrade_settings.value, "max_unavailable", 0)
583-
}
584-
}
577+
upgrade_settings {
578+
strategy = lookup(each.value, "strategy", "SURGE")
579+
max_surge = lookup(each.value, "strategy", "SURGE") == "SURGE" ? lookup(each.value, "max_surge", 1) : null
580+
max_unavailable = lookup(each.value, "strategy", "SURGE") == "SURGE" ? lookup(each.value, "max_unavailable", 0) : null
585581

586-
dynamic "upgrade_settings" {
587-
for_each = lookup(each.value, "strategy", "SURGE") == "BLUE_GREEN" ? [each.value] : []
588-
content {
589-
strategy = lookup(upgrade_settings.value, "strategy")
590-
591-
blue_green_settings {
592-
node_pool_soak_duration = lookup(upgrade_settings.value, "node_pool_soak_duration", "3600s")
582+
dynamic "blue_green_settings" {
583+
for_each = lookup(each.value, "strategy", "SURGE") == "BLUE_GREEN" ? [1] : []
584+
content {
585+
node_pool_soak_duration = lookup(each.value, "node_pool_soak_duration", "3600s")
593586

594587
standard_rollout_policy {
595-
batch_soak_duration = lookup(upgrade_settings.value, "batch_soak_duration", "60s")
596-
batch_percentage = lookup(upgrade_settings.value, "batch_percentage", null)
597-
batch_node_count = lookup(upgrade_settings.value, "batch_node_count", null)
588+
batch_soak_duration = lookup(each.value, "batch_soak_duration", "60s")
589+
batch_percentage = lookup(each.value, "batch_percentage", null)
590+
batch_node_count = lookup(each.value, "batch_node_count", null)
598591
}
599592
}
600593
}
@@ -806,27 +799,20 @@ resource "google_container_node_pool" "windows_pools" {
806799
auto_upgrade = lookup(each.value, "auto_upgrade", local.default_auto_upgrade)
807800
}
808801

809-
dynamic "upgrade_settings" {
810-
for_each = lookup(each.value, "strategy", "SURGE") == "SURGE" ? [each.value] : []
811-
content {
812-
strategy = lookup(upgrade_settings.value, "strategy", "SURGE")
813-
max_surge = lookup(upgrade_settings.value, "max_surge", 1)
814-
max_unavailable = lookup(upgrade_settings.value, "max_unavailable", 0)
815-
}
816-
}
802+
upgrade_settings {
803+
strategy = lookup(each.value, "strategy", "SURGE")
804+
max_surge = lookup(each.value, "strategy", "SURGE") == "SURGE" ? lookup(each.value, "max_surge", 1) : null
805+
max_unavailable = lookup(each.value, "strategy", "SURGE") == "SURGE" ? lookup(each.value, "max_unavailable", 0) : null
817806

818-
dynamic "upgrade_settings" {
819-
for_each = lookup(each.value, "strategy", "SURGE") == "BLUE_GREEN" ? [each.value] : []
820-
content {
821-
strategy = lookup(upgrade_settings.value, "strategy")
822-
823-
blue_green_settings {
824-
node_pool_soak_duration = lookup(upgrade_settings.value, "node_pool_soak_duration", "3600s")
807+
dynamic "blue_green_settings" {
808+
for_each = lookup(each.value, "strategy", "SURGE") == "BLUE_GREEN" ? [1] : []
809+
content {
810+
node_pool_soak_duration = lookup(each.value, "node_pool_soak_duration", "3600s")
825811

826812
standard_rollout_policy {
827-
batch_soak_duration = lookup(upgrade_settings.value, "batch_soak_duration", "60s")
828-
batch_percentage = lookup(upgrade_settings.value, "batch_percentage", null)
829-
batch_node_count = lookup(upgrade_settings.value, "batch_node_count", null)
813+
batch_soak_duration = lookup(each.value, "batch_soak_duration", "60s")
814+
batch_percentage = lookup(each.value, "batch_percentage", null)
815+
batch_node_count = lookup(each.value, "batch_node_count", null)
830816
}
831817
}
832818
}

0 commit comments

Comments
 (0)